[テキストファイルを1行ずつ読み書きする]
ReadLn,WriteLnを使って、1行ずつ別ファイルの書き出します。
【ソースコード】 [tips0051.pas]
program tips0051;
{$APPTYPE CONSOLE}
uses SysUtils, Classes, MMSystem;
var
SF,DF:TextFile;
buf:string;
cnt1,cnt2:Integer;
tm:int64;
begin
tm:=timeGettime;
WriteLn('◆ReadLn・WriteLnで1行単位で読み書き');
AssignFile(SF,'tips0051_input.txt');
AssignFile(DF,'tips0051_output.txt');
Reset(SF);
Rewrite(DF);
cnt1:=0; cnt2:=0;
while not eof(SF) do
begin
ReadLn(SF,buf);
cnt1:=cnt1+1;
WriteLn(DF,buf);
cnt2:=cnt2+1;
end;
CloseFile(SF);
CloseFile(DF);
WriteLn('入力件数:',inttostr(cnt1),'件''');
WriteLn('出力件数:',inttostr(cnt2),'件''');
WriteLn('処理時間:',inttostr(timeGettime-tm),'ms');
end.
【コンパイル&実行】 [tips0051.bat]
dcc32 tips0051.pas
tips0051.exe > tips0051.txt
pause
【入力】 [tips0051_input.txt]
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
【出力】 [tips0051_output.txt]
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
【実行結果】 [tips0051.txt]
◆ReadLn・WriteLnで1行単位で読み書き
入力件数:5件
出力件数:5件
処理時間:3ms
Copyright c 2009, ohishi,All rights reserved.