热情软件屋

 

如何将数组写入文件


编号:QA001975
建立日期: 1999年11月5日 最后修改日期:1999年11月5日
所属类别:

李伟:
    操作系统: win95
    编程工具: Delphi40
    问题: 我遇到一个问题,我安装的是Delphi40 。当把一个长度为n(字节数)的数组用WriteFile,或Delphi自带的FileWrite写入文件时,实际写入的是n+2个字节,后两个字节是 FF,FF,此时看到的是乱码。 比如说我定义 buf[32],在WriteFile中写入字节数为大于等于40时,才能在UltraEdit32中看到buf[32],其后是FF,FF,FF,FF,00,00,00,00。 这是怎么回事?应该怎么改? 请指教!多谢了!

回答:

    由于你没有给出定义数组和使用FileWrite的语句,无法指出确切的原因。下面是一个正确的例子供参考:
    procedure TForm1.Button1Click(Sender: TObject);
    var b: array [0..31] of byte;
     i:integer;
     h:integer;
    begin
     for i:=0 to 31 do
     begin
     b[i] := i;
     end;
     h := FileCreate('f:\test.dat');
     FileWrite(h, b, sizeof(b));
     FileClose(h);
    end;

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio