home *** CD-ROM | disk | FTP | other *** search
- uses vdatesu, vgenu, vstringu, vsortu, vtypesu;
-
- Const
-
- MaxArr : INTEGER = 0;
-
- Type
-
- SArray = Array[1..16000] of PString;
-
- Var
-
- Sarr : SArray;
-
- L1 : WORD;
-
- S1 : STRING;
-
- T : TEXT;
-
- {────────────────────────────────────────────────────────────────────────────}
-
- Procedure DoString;
-
- BEGIN
-
- { Show array }
-
- For L1 := 1 to MaxArr Do
- BEGIN
-
- WriteLn( VStrGet( Sarr[L1] ) );
-
- END;
-
- WriteLn;
- WriteLn;
-
- END;
-
- {────────────────────────────────────────────────────────────────────────────}
-
- Procedure SortFile;
-
- BEGIN;
-
- WriteLn('Sorting...');
-
- Sort( Sarr, 1, MaxArr, NIL, 'ElementType=PSTRING' );
-
- END;
-
- {────────────────────────────────────────────────────────────────────────────}
-
- Procedure SaveFile;
-
- Var
-
- S1 : STRING;
- L1 : LONGINT;
-
- BEGIN
-
- WriteLn('Saving File...');
-
- Assign(T, ParamStr(2));
- Rewrite(T);
- L1 := 1;
-
- While (L1 <= MaxArr) Do
- BEGIN
-
- WriteLn(T, VStrGet(Sarr[L1]));
-
- Inc(L1);
-
- END;
-
- Close(T);
-
- END;
-
- {────────────────────────────────────────────────────────────────────────────}
-
- Procedure ReadFile;
-
- Var
-
- S1 : STRING;
-
- BEGIN
-
- WriteLn('Loading File...');
-
- Assign(T, ParamStr(1));
- Reset(T);
- MaxArr := 1;
-
- While (NOT Eof(T)) And
- (MaxAvail > 255) Do
- BEGIN
-
- ReadLn(T, S1);
-
- Sarr[MaxArr] := VStrNew( S1 );
-
- Inc(MaxArr);
-
- END;
-
- Dec(MaxArr);
-
- Close(T);
-
- END;
-
- {────────────────────────────────────────────────────────────────────────────}
-
- Procedure DisposeAll;
- BEGIN
-
- For L1 :=1 to MaxArr Do
- VStrDispose( Sarr[L1] );
-
- END;
-
- {────────────────────────────────────────────────────────────────────────────}
- {────────────────────────────────────────────────────────────────────────────}
- {────────────────────────────────────────────────────────────────────────────}
-
- BEGIN
-
- WriteLn;
- WRiteLn('TSort; VisionTools VSORTU tester; Version 0.9');
- WRiteLn;
-
- If ParamCount=2 Then
- BEGIN
-
- ReadFile;
- SortFile;
- SaveFile;
-
- END
- ELSE
- BEGIN
- WriteLn('This program sorts files of ASCII strings.');
- WriteLn;
- WriteLn('Usage: TSORT inputfilename outputfilename');
- WriteLn;
- END;
-
- END.
-