• Delphi txt文件的操作(读取、写入)


    在进行win32开发中对文件的读写是最常用的操作之一

    Delphi 支持三种文件类型:  文本文件、记录文件、无类型文件。

    文本文件的读写:

    文本文件 是以行为单位进行读、写的。由于每一行的长度不一定相同,不能计算出给定行在文件中的确切位置,因而只能顺序地读写。
    文本文件只能单独为读或写而打开,在一个打开的文本文件上同时进行读、写操作是不允许的。
    文本文件 的打开需要两个步骤:1.文件变量与文件名关联;2.初始化读写。

    1.文件变量与文件名关联:
    AssignFile(VarTxt, FileName);
    FileName 如果省略路径将默认当前目录。

    2.初始化读写有三种方式:
    (1) Reset: 只读打开, 指针移到文件头;
    (2) Rewrite: 创建新文件并打开, 只写;
    (3) Append: 从尾部追加, 指针当然在文件尾。
    文件不存在时使用 Reset 或 Append 会引发一个I/O异常。
    最后用 CloseFile 关闭文件。
    为保持兼容,Delphi 也允许用户用 Assign 建立关联, 用 Close 关闭文件。

     

    第一种、直接用 memo 加载 txt文件

    1. memo控件读取txt
    memo1.Lines.LoadFromFile('E:**.txt');

    要读取一个txt文件的全部内容可以借用到 stringlist 来中转。

    建立一个stringlist,如:
    var
    sList: TStringlist;
    begin
       sList := TStringList.Create;
    try
       sList.LoadFromFile('C:a.txt');
    finally
    sList.Free;
    end;
    end;

    然后可以将TStringList 转换为 string类型  str=ts.GetText ; 来转换


    第二种、Delph内建的函数读写

    示例代码:

    var
      F: Text;  //TextFile 和 Text 是一样的
      FileName: string = 'c:	emp	est.txt';
    //写文件
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      AssignFile(F,FileName);
      Rewrite(F);  //会覆盖已存在的文件
     Writeln(F, '第一行');
      Writeln(F, '第二行');
     CloseFile(F);
    end;
    //读文件(先执行写文件)
    procedure TForm1.Button2Click(Sender: TObject);
    var
      s: string;
    begin
      AssignFile(F,FileName);
      Reset(F);  //只读打开
     Readln(F, s);   //读取
      ShowMessage(s); //显示: 第一行
      Readln(F, s);   //继续读取
      ShowMessage(s); //显示: 第二行
     CloseFile(F);
    end;
    //追加
    procedure TForm1.Button3Click(Sender: TObject);
    begin
      AssignFile(F,FileName);
      Append(F);  //打开准备追加
     Writeln(F, '第三行');
      Writeln(F, '第四行');
     CloseFile(F);
    end;
    //读取全部(需要Memo帮忙显示)
    procedure TForm1.Button4Click(Sender: TObject);
    var
      s: string;
    begin
      AssignFile(F,FileName);
      Reset(F);  //只读打开
     Memo1.Clear;
      while not Eof(F) do
      begin
        Readln(F, s);
        Memo1.Lines.Add(s);
      end;
     CloseFile(F);
    end;

    第三种、Delphi 用流来读取TXT文件
    TXT文本文件是一种以ACSII吗存储数据的文件。在TXT文件中只能够存储一些字符数据,所以这种文件的移植性和通用性很强,具有较高的易用性,并且 被广泛应用,所以Delphi对该类型文件提供了较好的支持。目前在Internet上最为流行的XML文件也是一种文本文件。TXT文本文件的操作非常 简单,具体操作过程如下: 
    1.首先要声明一个TextFile类型的的文件指针。如:var MyFile:TEXTFile。 
    2.然后使用AssignFile方法将声明的文件指针与外部TXT文件相关联。AssignFile (FileName ) ;FileName 既可以是全路径名,也可以仅是文件名。对于后者系统将在当前目录下查找。 
    3.初始化读写有三种方式: Reset为读打开文件并把文件指针移动到文件首;Rewrite为写创建一个新文件;Append为写打开存在的文件并把文件指针定位在文件尾。 
    4.读取或写入文本。Readln方法能够读取一行文本,writeln方法能向文件写入一行文本。 
    5.最后用Closefile方法关闭已打开的文件。 
    在这里我们要介绍的就是如何用流来读取TXT文件中的数据,并且在指定显示区域显示出来。首先让我们通过一个简单范例来了解ReadBuffer方法,让我们来读取指定TXT文件的前10个字符。


    创建时间:2015-11-07  更新日期:2020.01.02
    来源:https://www.cnblogs.com/guorongtao/p/4944675.html
  • 相关阅读:
    db2 SQL3055N 报错分析解决
    db2之load报错SQL3107W解决
    db2报错之ERRORCODE=-4220 SQLSTATE=NULL
    mybatis-generator自动生成工具配置
    db2 表空间backup pending
    DB2
    Redis
    Linux安装Redis
    vue2.0学习(五)-Vue-router
    JavaScript基础-数据类型
  • 原文地址:https://www.cnblogs.com/guorongtao/p/4944675.html
Copyright © 2020-2023  润新知