Delphi txt文件的操作[1]读取、写入
Delphi txt文件的操作[1]读取、写入
Delphi 支持3种文件类型: 文本文件、记录文件、无类型文件。
1、文本文件的读写特点:
- 文本文件 是以行为单位进行读、写的。由于每一行的长度不一定相同,不能计算出给定行在文件中的确切位置,因而只能顺序地读写。
- 文本文件只能单独为读或写而打开,在一个打开的文本文件上同时进行读、写操作是不允许的。
2、文本文件 的打开步骤:
2.1 文件变量与文件名关联:
AssignFile(VarTxt, FileName); //FileName 如果省略路径将默认当前目录。FileName 既可以是全路径名,也可以仅是文件名。
2.2 初始化读写,有3种方式:
- (1) Reset: //只读打开, 指针移到文件头;
- (2) Rewrite: //创建新文件并打开, 只写;
- (3) Append: //为写打开存在的文件并把文件指针定位在文件尾,从尾部追加。
注意:文件不存在时使用 Reset 或 Append 会引发一个I/O异常。
最后用 CloseFile 关闭文件(为保持兼容,Delphi 也允许用户用 Assign 建立关联, 用 Close 关闭文件)。
2.3 读写文本
- Readln //读取一行文本,
- writeln //写入一行文本。
3、读写txt文件方式:
3.1 直接用 Memo 加载
Memo1.Lines.LoadFromFile('E:\*\*.txt');
3.2 使用 Stringlist 来中转加载
var
sList: TStringlist;
begin
sList := TStringList.Create;
try
sList.LoadFromFile('C:\a.txt');
finally
sList.Free;
end;
end;
然后可以将TStringList 转换为 string类型 str=ts.GetText ; 来转换
3.3 Delph内建的函数读写
var
F: Text; //TextFile 和 Text 是一样的
FileName: string = 'c:\temp\test.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;
创建时间: 2015.11.07 更新时间:2020.01.02 2022.03.23
来源:https://www.cnblogs.com/guorongtao/p/4944675.html
博客园 滔Roy https://www.cnblogs.com/guorongtao 希望内容对你有所帮助,谢谢!