Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)aaa
published in(发表于) 2014/7/19 0:11:45
delphi无类型文件

delphi无类型文件

无类型文件

文本文件和类型文件的字节数可以通过代码得到,但不是所有的文件都能做到,例如RTF 文件。虽然RTF 文件中也包含文本文件,但是它还有其他的格式属性,所以需要使用识别RTF 格式的编辑器才可以进行浏览。

无类型文件是由数据块序列组成的,每个数据块为128 字节大小的数据。无类型文件数据的读写操作可以利用数据块实现。无类型文件的操作步骤与文本文件的操作步骤基本相同,其操作方法也与前面两种文件的操作方法基本相同,只是调用的函数略有差异。

下面利用一个示例来说明如何利用数据块将内容全部为“Y”的字符串写到无类型文件中,并将其读出显示在Memo 中。

(1)新建一个工程。在窗体中添加一个Memo 组件和两个Button 组件。两个Button 组件的Caption 属

性分别为“读取”和“写入”。

(2)“读取”按钮代码如下:

procedure TForm1.Button1Click(Sender: TObject);

var

UnTypedFile:file;

Buf:array [0..128] of byte;

Num,I:Integer;

Str:String;

begin

AssignFile(UnTypedFile,’UnTypedFile.dat’);

Reset(UnTypedFile);

try

BlockRead(UnTypedFile,Buf,1,Num);

for I:=0 to 128 do

Str:=Str+VarToStr(char(Buf[I]));

Memo1.Lines.Add(Str);

finally

CloseFile(UnTypedFile);

end;

end;

(3)“写入”按钮代码如下:

procedure TForm1.Button2Click(Sender: TObject);

var

UnTypedFile:file;

Buf:array[0..128] of byte;

Num:Integer;

begin

AssignFile(UnTypedFile,’UnTypedFile.dat’);

Reset(UnTypedFile);

if FileExists(’UnTypedFile.dat’) then

Reset(UnTypedFile)

else

Rewrite(UnTypedFile);

try

Seek(UnTypedFile,FileSize(UnTypedFile)); //Seek 使文件指针的位置位于末尾

FillChar(Buf,SizeOf(Buf),’Y’);

BlockWrite(UnTypedFile,Buf,1,Num);

finally

CloseFile(UnTypedFile);

end;

end;




If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759