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);
Delphi中文本文件的操作的更多相关文章
- Python中文本文件读写操作的编码问题
Python中文本文件读写的编码问题 编码(encode): 我们输入的任何字符想要以文件(如.txt)的形式保存在计算机的硬盘上, 必须先经按照一定的规则编成计算机认识的二进制后,才能存在电脑硬盘上 ...
- Delphi中的dll操作
利用delphi dll wizard进行dll的编写. 创建:保存时改dll名称 library test2; uses SysUtils, Classes, forms, dialogs; {$R ...
- delphi中ini 文件操作记要(1): 使用 TIniFile
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...
- Delphi中String类型原理介绍
Delphi中字符串的操作很简单,但幕后情况却相当复杂.Pascal传统的字符串操作方法与Windows不同,Windows吸取了C语言的字符串操作方法.32位Delphi中增加了长字符串类型,该类型 ...
- Delphi中exit、break、continue等跳出操作的区别
Delphi中表示跳出的有break,continue,abort,exit,halt,runerror等 1.break 强制退出最近的一层循环(注意:只能放在循环里:而且是只能跳出最近的一层循环) ...
- Delphi中的操作二进制文件的两个重要函数
Delphi中的操作二进制文件的两个重要函数 对于通过Byte数组进行文件操作的,在FTP中经常会使用到,我也是在Delphi调用Web Service进行文件的上传和下载时找到这两个函数的,挺好用的 ...
- delphi中我用定时器每隔一段时间执行操作
delphi中,我用定时器每隔一段时间执行数据库插入及更新工作!adoquery.close;adoquery.sql.cleare;adoquery.connection:=con1;adoquer ...
- delphi读写文本文件
delphi读写文本文件 在工作中遇到了这样一个问题,使用PLSQL将一个表的数据转化成一些列的insert语句存储到一个.sql文本中,我本来想使用access数据库中的查询视图一次执行这些语句 ...
- ActiveX数据对象之事务控制在VB和DELPHI中的应用
本文发表在中国人民解放军"信息工程大学"学报 2001年第3期. ActiveX数据对象之事务控制在VB和DELPHI中的应用 ...
随机推荐
- ios中框架介绍
ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...
- Puer是一个可以实时编辑刷新的前端服务器
##Puer是一个可以实时编辑刷新的前端服务器 确保你安装了nodejs(现在还有没nodejs环境的前端? 拖出去喂狗吧) 使用npm全局安装puer命令 npm install puer -g 输 ...
- JavaScript--数组--关联(hash)数组
关联(hash)数组的原理: hash算法: 接收一个字符串,计算出一个尽量不重复的序号 不同的字符串,计算出的序号尽量不同 相同的字符串,计算出的序号一定是相同 存入数据时: 将自定义下标名称交给h ...
- Wireshark抓包、过滤器
查阅于http://blog.sina.com.cn/s/blog_5d527ff00100dwph.html 1.捕捉过滤器 设置捕捉过滤器的步骤是:- 选择 capture -> optio ...
- 『重构--改善既有代码的设计』读书笔记----Inline Temp
与Inline Method相同,有时候犹豫需要Extract Method,需要对一些临时变量进行内联,而这个往往是Replace Temp with Query的一部分.简单来说,当你看到这种 d ...
- javascript权威指南学习笔记1
打开这本书,进入到javascript的世界.以前都是看各种视频,感觉什么收获也没有,反而弄得脑袋混乱,希望能够按照这本书的节奏掌握javascript这门语言,为我的前端学习打下基础. 学习前准备: ...
- php处理中文字符串
使用mbstring 先转换成UTF-8编码 mb_convert_encoding(Input::get('tags'),'UTF-8') mbstring用法参考http://php.net/ma ...
- yum 搭建lnmp环境详细步骤
1.关闭防火墙[root@CentOS ~]# chkconfig iptables off 2.关闭selinuxvi /etc/sysconfig/selinux//将SELINUX=enforc ...
- CentOS-6.4安装配置Nginx
在安装nginx前,需要确保系统安装了g++.gcc.openssl-devel.pcre-devel和zlib-devel软件.安装必须软件: [root@admin /]#yum install ...
- layer弹出标签层tab
引入文件: <script type="text/javascript" src="layer/layer.min.js"></script& ...