[Back to TEXTFILE SWAG index] [Back to Main SWAG index] [Original]
Program StrLenConv;
Uses
Dos, Crt;
Type
String_128 = String[128];
String_127 = String[127];
Var
X,Y,StrPos : Byte;
File128 : File of String_128;
File127 : File of String_127;
Str128 : String_128;
Str127 : String_127;
TempFile : Text;
Function FileExist(FileName: String): Boolean;
Var
Tmpfile : Text;
Attrib : Word;
Begin {Function FileExist}
If FileName = '' then
Begin {If FileName = ''}
FileExist := False; Exit;
End; {If FileName = ''}
Assign(Tmpfile,FileName);
GetFAttr(Tmpfile,Attrib);
FileExist := (DosError = 0);
End; {Function FileExist}
Begin {Main}
TextMode(c80);
ClrScr;
Writeln('Source file with 128 character strings:');
Write(' þ '); Readln(Str127);
If not(FileExist(Str127)) then
Begin {If not(FileExist(Str127))}
Writeln;
Writeln(' Error: ' + Str127 + ' does not exist.');
Halt(0);
End; {If not(FileExist(Str127))}
Assign(File128,Str127);
Reset(File128);
Writeln;
Writeln('Destination file for 127 character strings:');
Write(' þ '); Readln(Str127);
If FileExist(Str127) then
Begin {If FileExist(Str127)}
Writeln;
Writeln(' Error: ' + Str127 + ' already exists.');
Halt(0);
End; {If FileExist(Str127)}
Assign(File127,Str127);
ReWrite(File127);
Assign(TempFile,'128TO127.TMP');
ReWrite(TempFile);
StrPos := 1;
Writeln;
Writeln('Reading Source File...');
Repeat
Read(File128,Str128);
For X := 1 to 128 do Writeln(TempFile,Str128[X]);
Until EOF(File128);
Reset(TempFile);
Close(File128);
Writeln;
Writeln('Writing Destination File...');
Repeat
For X := 1 to 127 do
Begin {For X := 1 to 127}
Readln(TempFile,Str128);
Str127[X] := Str128[1];
End; {For X := 1 to 127}
Write(File127,Str127);
Until EOF(TempFile);
Close(File127);
Erase(TempFile);
Close(TempFile);
End. {Main}
Feel free to edit this however you like. What it does (in a nutshell)
is read a file which has 128 character strings, saves each character to
a text file (one on a line), and then re-reads them into the 127
character strings, writing each one to a file.
I hope this is what you were looking for.
Michael J. Church
MC Squared Computing Technologies
---
þ RNet 1.08R:þ NANET þ After Five' BBS þ Elkhart, IN þ (219) 262-1370
[Back to TEXTFILE SWAG index] [Back to Main SWAG index] [Original]