对文件的操作

九 对文件的操作:

●文本文件: 定义: var TextFileVar: Text ; 

1. 文本文件的打开需要两个步骤:
(1). 文件变量与文件名关联;
AssignFile ( TextFileVar , FileName ) ; 
(2). 初始化读写(三种方式)
1>. Reset : 为读打开文件并把文件指针移动到文件首;
2>. Rewrite : 为写创建一个新文件;
3>. Append : 为写打开存在的文件并把文件指针定位在文件尾。
注:当使用Reset或Append过程而文件不存在时将会引发一个I/O异常。
  I/O异常类EInOutError是在程序运行中试图对文件或外设进行操作失败 后产生的,它从Exception派生后增加了一个公有数据成员ErrorCode,用于 保存所发生错误的代码。这一成员可用于在发生I/O异常后针对不同情况采取不 同的对策。
  当设置编译指示{$I- } 时,不产生I/O异常类而是把错误代码返回到预定 义变量IOResult中。 
2. 文本文件的关闭: CloseFile
3. 文本文件的读写: read(ln)(TextFileNameVar,num1,num2,...)
4. 文本文件的编辑: Memo1.Lines.LoadFromFile ( TextFileName ) 
Memo1.Lines.SaveToFile ( TextFileName );

●记录文件  var RecordFileVar: file of RecordType

●无类型文件
无类型文件提供了底层的I/O通道,可用于存取可变长度记录的文件。经常用
于文件的复制操作中。DELPHI中有更好的方法如下,所以无类型文件很少使用。可
参看BlockRead、BlockWrite两个联机帮助主题。 
●Delphi的文件管理标准过程: 
1. 文件的打开与关闭:
AssignFile : 把一个外部文件名和一个文件变量相关联
Reset : 打开一个存在的文件
Rewrite : 创建并打开一个新文件(或覆盖原有文件)
Append : 以添加方式打开一个文件(只适用于文本文件)
CloseFile : 关闭一个打开的文件
FileOpen : 打开一个特定的文件并返回文件句柄
FileCreate : 创建一个给定文件名的文件并返回文件句柄
FileClose : 关闭一个特定句柄的文件 
注:后边三个文件主要供系统内部使用,在文件复制的编程中
也往往会用到。它们操作的对象是文件句柄而不是文件变量。 
2. 文件定位:
Seek : 把文件当前位置移到指定部分
FilePos : 返回文件的当前位置
Eoln : 返回行结束标志
EOF : 返回文件结束标志
FileSeek :改变当前文件指针的位置
注意:Seek与FileSeek的区别是:1. Seek仅用于记录文件;
2. FileSeek的参数是文件句柄、偏移量、起始位置。其中起始位置有文件
首、当前位置、文件尾三种选择。Seek的参数是文件变量、偏移量,偏移量是
从文件首开始定位的。3. FileSeek的偏移量以字节数来计算,而Seek是根
据记录号进行移动。 <例程参见DELPHI初级教程文件管理(二)>
3. 文件删除与截断: 
Erase : 删除一个存在的文件
DeleteFile : 删除一个文件
Truncate : 从文件当前位置将文件截断 
注意:Erase与DeleteFile的区别是:Erase以文件变量为参数,当文件不能
删除时引起一个异常;DeleteFile以文件名为参数,当文件不存在或不能删
除时返回False,而并不引起一个异常。
4. 文件名操作 
Rename : 文件更名,以文件变量为操作对象
RenameFile : 文件更名,参数为文件的原名和新名
ChangeFileExt : 改变文件扩展名
ExpandFileName : 返回文件全路径名
ExtractFileExt : 返回文件扩展名
ExtractFileName : 从全路径名中返回文件名
ExtractFilePath : 返回特定文件的路径 
5. 文件属性 
FileGetAttr :返回文件属性
FileSetAttr :设置文件属性 

6. 文件状态 
FileSize :返回文件对象大小
IOResult :返回上一次I/O操作的状态
FileExists :检测文件是否存在 
7. 文件日期
DateTimeToFileDate :把Delphi日期格式转换为DOS日期格式
FileDateToDateTime :把DOS日期格式转换为Delphi日期格式
FileGetDate : 返回文件的DOS日期时间戳
FileSetDate : 设置文件的DOS日期时间戳 
8. 文件读写
Read,Readln :从文本或记录文件中读取变量
Write : 将指定变量写入文本或记录文件
Writeln : 将指定变量写入文本文件并写入一个行结束标志
FileRead : 从一个指定文件中读取变量
FileWrite : 向指定文件写入数据 
FileRead和FileWrite都是以文件句柄为操作对象,主要供系统内部使用。
9. 目录操作 
MkDir :创建当前目录的子目录
ChDir :改变当前目录
GetDir :返回特定磁盘的当前目录
RmDir :删除一个空子目录 
10. 磁盘操作 
DiskFree :返回磁盘自由空间
DiskSize :返回特定磁盘的大小 
6.1.4.11 文件查找
FileSearch :查找目录中是否存在某一特定文件
FindFirst :在目录中查找与给定文件名(可以包含匹配符)及属性集相匹
配的第一个文件
FindNext :返回符合条件的下一个文件
FindClose :中止一个FindFirst / FindNext序列

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值