读取文件内容更快的方式

Bone_storm 2018-01-13 11:50:38
我要实现的功能是读取DBC或TXT文件,然后将每行按照一定语法格式分解 显示在对应位置

我先使用readln 一行一行读取 当,文件较大时(文件有很多行)。运行速度大约是每分钟8000行

var
FileName, Filetxt: string;
if OpenDialog1.Execute then
begin
FileName := OpenDialog1.FileName;
AssignFile(F,FileName);
reset(F);
end;
while not eof(F) do
begin
readln(F,Filetxt); //这里读取的每行数据暂存在Filetxt中
(分解Filetxt的过程)
end;


现在想用seek函数 读取每行内容,并存于Filetxt中,用于分解数据内容。(听说seek读取速度快)

新手求大牛们指教
...全文
507 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
直接用TStringList LoadFromFile
Bone_storm 2018-01-15
  • 打赏
  • 举报
回复
怎么没有人呢, seek(F,X) F是文件,X是移动距离 每行长度不同怎么保证每次读取的不会错
Bone_storm 2018-01-15
  • 打赏
  • 举报
回复
引用 4 楼 Bone_storm 的回复:
确实是每行的数据,但是我还有一个问题 Load的文件必须指定是哪一个吗? 能不能在运行时弹出一个打开文件对话框,选择所需Load的文件。
这个我也解决了, 我试试完整代码后的效率。
Bone_storm 2018-01-15
  • 打赏
  • 举报
回复
确实是每行的数据,但是我还有一个问题 Load的文件必须指定是哪一个吗? 能不能在运行时弹出一个打开文件对话框,选择所需Load的文件。
Bone_storm 2018-01-15
  • 打赏
  • 举报
回复
引用 2 楼 linuxpingwangping 的回复:
直接用TStringList LoadFromFile
请问Load文件之后,文件数据是如何存入List中的,每个List元素是什么,文件的行吗?

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧