首页 > 编程 > Delphi > 正文

Delphi中判断文件是否为文本文件的函数

2020-01-31 20:52:27
字体:
来源:转载
供稿:网友
在自己编写文本文件读取函数的时候,你首先会遇到的第一个问题就是:对于给定的一个文件名,怎么知道它所代表磁盘文件的确是文本文件?这里有一个很简单的方法:把给定的那个文件看作是无类型的二进制文件,然后顺序地读出这个文件的每一个字节,如果文件里有一个字节的值等于0,那么这个文件就不是文本文件;反之,如果这个文件中没有一个字节的值是0的话,就可以判定这个文件是文本文件了。这是原理,下面看看在Delphi 中怎样编程来实现它--
复制代码 代码如下:

function IsTextFile(FileName:string):boolean; 
var 
Fs:TFileStream; 
i,size:integer; 
IsTextFile:boolean; 
ByteData:Byte; 
begin 
if FileExists(FileName) then 
begin 
  Fs:=TFileStream.Create(FileName,fmOpenRead); 
  IsTextFile:=true; 
  i:=0; 
  size:=Fs.Size; 
  While (i<size) and IsTextFile do 
  begin 
    Fs.Read(ByteData,1); 
    IsTextFile:=ByteData<>0; 
    inc(i) 
  end; 
  Fs.Free; 
  Result:=IsTextFile 
end 
else 
  Result:=false 
end;
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选