Kaw*_*hii 6 delphi delphi-7 text-files
我有一个大文本文件(大约100MB),每行由CR字符分隔,而不是CRLF.
我尝试使用TStringList.LoadFromFile()或ReadLn(F,..)逐行读取此文本文件,但这两种方法都要求行由CRLF分隔.
你有没有有效和快速的方法来阅读这种文本文件?
谢谢.
PS:我使用的是Delphi 7.
这应该做到这一点.将文本文件读入内存流.然后用内容填充字符串列表.
textList.Text接受任何组合CR,LF并CRLF形成一条线.
function MemoryStreamToString( M : TMemoryStream) : string;
begin
SetString( Result,PChar(M.Memory),M.Size div SizeOf(Char)); // Works in all Delphi versions
end;
var
memStream : TMemoryStream;
textList : TStringList;
begin
textList := TStringList.Create;
try
memStream:= TMemoryStream.Create;
try
memStream.LoadFromFile('mytextfile.txt');
textList.Text := MemoryStreamToString( memStream); // any combination of CR,LF,CRLF interprets as a line
finally
memStream.Free;
end;
// do something with textList
finally
textList.Free;
end;
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4132 次 |
| 最近记录: |