读书人

文件填充有关问题

发布时间: 2012-03-13 11:21:11 作者: rapoo

文件填充问题
请问如何实现打开一个文件,然后把内容全部填充为0?

[解决办法]

Delphi(Pascal) code
function FillZeroFile(IFileName:string):Boolean;var  FS:TFileStream;  Chr:Char;  Size:Int64;begin  Result := True;  try    FS:=TFileStream.Create(IFileName,fmOpenReadWrite);    Chr:= #0;    Size := FS.Size;    FS.Free;    DeleteFile(IFileName);    FS:=TFileStream.Create(IFileName,fmCreate);    while FS.Position < Size do begin      FS.Write(Chr,SizeOf(Chr));    end;    FS.Free;  except    Result := False;  end;end;procedure TForm1.Button1Click(Sender: TObject);begin   FillZeroFile('H:\test.exe')end;
[解决办法]
二楼的代码就可以实现你要的功能啊。

其实如果是你要避免恢复的话,无论填充什么字符都可以的。

你想要填充什么把程序里如下红色部分修改为你要的字符的ASC码就可以了。

FS:=TFileStream.Create(IFileName,fmOpenReadWrite);
Chr:= #0;
Size := FS.Size;

读书人网 >.NET

热点推荐