讀取下txt文件試了下用try except來容錯file not found錯誤。發現運行的時候總是報錯。
program Project1;
uses sysutils;
const file_name='C:\Users\FanXiaoLei\Desktop\15.txt';
var stextF:textfile;
s :string;
begin
try
begin
assignFile( stextF,file_name);
reset(stextF);
while not eof(stextF) do
begin
readln(stextF,s);
writeln(utf8decode(s));
end;
closeFile(stextF);
end;
except
on e:EInOutError do writeln('error:',e.message);
end;
readln;
end.
繼續的話還會報錯:
後來去英文論壇上爬了幾樓。意思是try except不是很好的體驗。可以通過其他的辦法進行規避使用。後來有人提了下使用<運行不帶調試>可以運行通過。我試了下確實可以的。
改用運行不調試以後就正常了:
當然規避使用也是可以的。我上面讀取文件出現file not found錯誤可以先檢查文件是否存在然後再決定後續處理就可以。
program readtxt;
uses sysutils;
const file_name='C:\Users\FanXiaoLei\Desktop\14.txt';
var stextF:textfile;
s :string;
begin
if FileExists(file_name) then
begin
assignFile( stextF,file_name);
reset(stextF);
while not eof(stextF) do
begin
readln(stextF,s);
writeln(utf8decode(s));
end;
closeFile(stextF);
end
else
writeln(utf8decode('文件未找到'));
readln;
end.
正常讀取時: