zoukankan      html  css  js  c++  java
  • 常见文件处理之文本文件

     文本文件是以行为单位进行读、写的。由于每一行的长度不一定相同,不能计算出给定行在文件中的确切位置,因而只能顺序地读写。

        文本文件只能单独为读或写而打开,在一个打开的文本文件上同时进行读、写操作是不允许的。

        文本文件的打开需要两个步骤:1.文件变量与文件名关联;2.初始化读写。

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

    2.初始化读写有三种方式:
    (1) Reset: 只读打开, 指针移到文本开始;
    (2) Rewrite: 创建新文件并打开, 只写;
    (3) Append: 从尾部追加, 指针指向文本末尾。

    文件不存在时使用 Reset 或 Append 会引发一个I/O异常。

    最后用 CloseFile 关闭文件。

    下面是常用的三个操作,写入内容,读取内容,追加内容

    [delphi] view plaincopy
     
    1. unit Unit1;  
    2.   
    3. interface  
    4.   
    5. uses  
    6.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  
    7.   Dialogs, StdCtrls;  
    8.   
    9. type  
    10.   TForm1 = class(TForm)  
    11.     Button1: TButton;  
    12.     Button2: TButton;  
    13.     Button3: TButton;  
    14.     procedure Button1Click(Sender: TObject);  
    15.     procedure Button2Click(Sender: TObject);  
    16.     procedure Button3Click(Sender: TObject);  
    17.   private  
    18.     { Private declarations }  
    19.   public  
    20.     { Public declarations }  
    21.   end;  
    22.   
    23. var  
    24.   Form1: TForm1;  
    25.   
    26. implementation  
    27.   
    28. var  
    29.   F: TextFile;  
    30.   FileName: string = 'c:/A.txt';  
    31.   
    32.   
    33. {$R *.dfm}  
    34.   
    35. //向文本文件写入内容  
    36. procedure TForm1.Button1Click(Sender: TObject);  
    37. begin  
    38.   AssignFile(F,FileName);  
    39.   Rewrite(F);        //重写(覆盖)已存在的文件  
    40.   Writeln(F,'one');  //写入一行  
    41.   Writeln(F,'two');  
    42.   CloseFile(F);  
    43. end;  
    44.   
    45. //读取文本文件内容  
    46. procedure TForm1.Button2Click(Sender: TObject);  
    47. var  
    48.   str:string;  
    49. begin  
    50.   AssignFile(F,FileName);  
    51.   Reset(F);         //以只读方式打开文本文件  
    52.   while not Eof(F) do      //循环文本文件,判断是否到尾部  
    53.   begin  
    54.     Readln(F,str);         //读取一行  
    55.     ShowMessage(str);  
    56.   end;  
    57. end;  
    58.   
    59. //向文本文件追加内容  
    60. procedure TForm1.Button3Click(Sender: TObject);  
    61. begin  
    62.   AssignFile(F,FileName);  
    63.   Append(F);              //打开文件准备追加,指针指向文本末尾  
    64.   Writeln(F, 'three');   //写入一行  
    65.   Writeln(F, 'four');  
    66.   CloseFile(F);  
    67. end;  
    68.   
    69. end.  

    http://blog.csdn.net/bdmh/article/details/4147077

     
  • 相关阅读:
    11.26 JDBC
    11.25 sql
    Tomcat catalina.out太大解决
    js小数运算出现多位小数如何解决
    idea在调试时出现Method breakpoints may dramatically slow down debugging, idea卡很久
    MAC 'readonly' option is set (add ! to override)错误解决
    idea 2018注册码(激活码)永久性的
    切面保存web访问记录
    高德地图web 端智能围栏
    spring boot 入门 使用spring.profiles.active来分区配置
  • 原文地址:https://www.cnblogs.com/findumars/p/5002000.html
Copyright © 2011-2022 走看看