在delphi中如何建立指定大小的文件(200分)

  • 主题发起人 主题发起人 cp85729
  • 开始时间 开始时间
C

cp85729

Unregistered / Unconfirmed
GUEST, unregistred user!
用diskfree返回剩余磁盘容量(如1G),全部分配给一个程序中新建立的文件(如NewFn)
有什末好办法?(难道非要先建空文件,再写入1G的FF)
 
有意思,听…
我的办法就是
var
buf : integer;
FileVar : File of Byte;
begin
AssignFile(FileVar,'c:/1.dat');
rewrite(FileVar,1024*1024*1024);
write(FileVar,Buf);
end
 
用API函数可以实现:
声明一个文件句柄
h:THandle;
h:=FileCreate('xxx.abc');
SetFilePointer(h,x,y,File_Begin);x为文件长度的低32位值,为文件长度的高32位值。
SetEndofFile(h);
 
我靠!!!
你用 seekfile or fileseek 定位到文件的长度然后写进一个字不就行了吗???
 
我说怎么 jet car 下载几百兆的文件之前像死机一样,原来都是楼上的算法。
看看人家 net ant!
 
多人接受答案了。
 
To mikedeakins:
一样的,也要很长的时间(硬盘狂闪不已):
procedure TForm1.Button1Click(Sender: TObject);
var
f:integer;
buf:^byte;
begin
f:=filecreate('c:/test.dat');
fileseek(f,$12345670,2);
filewrite(f,buf,1);
fileclose(f);
end;
 
后退
顶部