热情软件屋

 

如何用delphi5实现读文本文件指定的一行


编号:QA004483
建立日期: 2001年11月18日 最后修改日期:2001年11月18日
所属类别:

ylb:
    如何用delphi5实现读文本文件指定的一行,并得到文本文件的总行数?谢谢!

回答:

    Delphi读文件文件一般使用Readln过程,如要读第3行可以这样:
    var
     i : Integer;
     F: TextFile;
     S: string;
    begin
     if OpenDialog1.Execute then { Display Open dialog box }
     begin
     AssignFile(F, OpenDialog1.FileName); { File selected in dialog }
     Reset(F);
     For i = 1 To 3 Do
     Readln(F, S);
     Edit1.Text := S; { Put string in a TEdit control }
     CloseFile(F);
     end;
    end;
    要统计总行数,只能从头逐行读,直到文件尾(Eof函数为True),每读一行计数器加1。
    不过由于文本文件的每行长度不相等,它不能象数据库文件那样想读那行就读哪行,只能顺序读。
    上面的方法容易理解,也容易实现。如果希望提高速度,编程上要麻烦一些,可以以二进制方式打开文件,将所有内容读入一个内存变量,然后使用Pos函数查找其中的回车(#13)个数,这样可以快速地统计总行数并能快速地找到指定行。
    
    相关问题:
    QA000932 "Delphi4对文件如何读写操作"

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio