用C ++编写快速文件

时间:2011-06-16 22:26:03

标签: c++

我在使用PHYSFS搜索文件的系统中工作。问题是现在我需要部署文件(即将文件的物理副本复制到目录中)。我的第一个解决方案是打开文件,加载到内存然后写入另一个文件,但我认为这将是一种更快的方法来部署文件。

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

一般来说,是的,浏览每个文件,阅读它然后编写它就是你想要的。请注意,您可能不应该立即将整个文件加载到内存中 - 而是使用PHYSFS_read从源文件中读取固定缓冲区(64kb左右应该是好的),将其写入目标文件,并重复。

答案 1 :(得分:1)

更快的解决方案是为现有文件创建hard link(如果您不是从其他系统复制),但我不确定这是否是您正在寻找的。

如果你需要创建一个实际的物理副本 - 我不认为你可以解决实际的复制问题,你建议的方式是最有效的。