如何拷贝文件大小大于4G的文件?(10分)

  • 主题发起人 主题发起人 yitang
  • 开始时间 开始时间
Y

yitang

Unregistered / Unconfirmed
GUEST, unregistred user!
如何拷贝文件大小大于4G的文件?
 
什么会在于4G?兄弟你利害!
 
你应该给多点分,这个问题很有分量呀
 
如果有人给出答案,我送100分
 
应该给4G分,呵呵.
 
用64位的操作系统直接copy,哈哈
 
用缓存,边读边写

CopyFile("in.dat","out.dat")

CopyFile(Source,Destination) // copy file from source to destination
{
// open source and destination files
src = fopen(Source,"rb");
if ( src == NULL )
Fatal("Could not open source file /"%s/" for reading.",Source);
dest = fopen(Destination,"wb");
if ( dest == NULL )
Fatal("Could not open file /"%s/" for writing.",Destination);

// read chunks from source, and copy to destination
#define COPY_CHUNK_SIZE 500
while (( 0 != (size = fread(buf,COPY_CHUNK_SIZE,src)) )
{
i++;
fwrite(buf,size,dest);
}

// close the files
fclose(dest);
fclose(src);
}
 
procedure TForm1.Button4Click(Sender: TObject);

var

SourceFileName,DestFileName: String;

begin


with TMemoryStream.Createdo


try

LoadFromFile(SourceFileName);

SaveToFile(DestFileName);

finally

Free;

end;

end;
 
谢谢各位的回答!
shbjkl:请问Tmemorystream如何配合进度条?
 
问题已经解决,谢谢大家
今天我试了一下,将分区格式改成NTFS格式就支持4G以上的文件了,FAT32格式不支持!
 
明明就是转成NTFS就可以了,跟编程无关的啊,
我拷d9的镜象还8G一张呢
 
硬盘使用 NTFS 格式 就可以了。
 
后退
顶部