zoukankan      html  css  js  c++  java
  • Delphi中文本文件的操作

    Delphi中文本文件的操作 


     

    相关知识内容:

        在对文本文件进行任何处理之前,首先要打开此文本文件。声明变量:通过此变量可以来引用一个文本文件。

        打开一个文件需要两步:首先是 AssignFile(),它可以将文件变量与一个文件关联起来。例如:这时,你可以进行第二步:打开文件。有三种方式打开文件:使用Rewrite()过程创建并打开文件;对于一个已存在的文件,此操作将使文件被覆盖;使用Reset()过程只读地打开一个文件;使用Append() 过程向已存在的文件追加文本。

        注意Reset()将以可读写方式打开类型文件和无类型文件。可以使用CloseFile()来关闭一个已打开的文件。

      

        下面是各种调用的函数:

      

        文件的打开与关闭:

         AssignFile:把一个外部文件名和一个文件变量相关联

         Reset:打开一个存在的文件

         Rewrite:创建并打开一个新文件(或覆盖原有文件)

         Append :以添加方式打开一个文件(只适用于文本文件)

         CloseFile:关闭一个打开的文件

         FileOpen:打开一个特定的文件并返回文件句柄

         FileCreate:创建一个给定文件名的文件并返回文件句柄

         FileClose:关闭一个特定句柄的文件

         后边三个文件主要供系统内部使用,在文件复制的编程中也往往会用到。它们操作的对象是文件句柄而不是文件变量。

      

        文件定位:

         Seek:把文件当前位置移到指定部分

         FilePos:返回文件的当前位置

         Eoln:返回行结束标志

         EOF:返回文件结束标志

         FileSeek:改变当前文件指针的位置

    【注:RichEdit和Memo这两个文本操作控件属性基本差不多,

    Memo1.Lines.LoadFromFile()//读出文件(,如果要打开指定文本需要OpenDialog)

    memo1.Lines.SaveToFile() //修改后保存文件(保存到原路径下的原文件,如果要另存需要SaveDialog)

    示例代码:

    一, 逐行读取

    procedure TForm1.Button1Click(Sender: TObject);

    var

        myfile:Textfile;

        s:String;

    begin

    AssignFile(myfile,'f:a.txt');

    Reset(myfile);

    while not eof(myfile) do

    begin

        Readln(myfile,s);

        Memo1.Lines.Add(s);

    end;

    CloseFile(myfile);

    end;

    二, 一次性读取,控件自带属性

    procedure TForm1.Button2Click(Sender: TObject);

    begin

    Memo1.Lines.LoadFromFile(ExtractFilePath(Application.ExeName)+'a.txt'); //打开并读出程序目录下的'a.txt'文本文件

    end;

    三,写文件

    procedure TForm1.Button3Click(Sender: TObject);   //写文件

    var

    stxt:TextFile;

    begin

    AssignFile(stxt,'my.txt');

    Rewrite(stxt);   //创建并打开文件;若文件已存在,此操作将使文件内容清空,使用ReSet只能打开,若指定的文件不存在时会产生一个错误

    Writeln(stxt, 'I love you!'); //此处为写入一行数据,当然也可以写成 Writeln(stxt, Memo1.Text); 即一次性写入Memo1中的所有内容

    CloseFile(stxt);

  • 相关阅读:
    Django -- 10.Django和Ajax
    Django -- 9.模型层(2)
    Django -- 8.模型层(1)
    Django -- 7.模板层
    Django -- 6.视图层
    Django -- 5.路由层(URLconf)_基于Django2
    Django -- 4.Django简介
    Django -- 3.web框架
    Delphi中Chrome Chromium、Cef3学习笔记(四)
    Delphi中Chrome Chromium、Cef3学习笔记(三)
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/3301904.html
Copyright © 2011-2022 走看看