需要更新文件。我看到两种方法:首先 - 重写文件(合并内容(,其次 - 删除以前的文件,然后使用新内容创建新文件。我传递所有文件的内容及其权重约为 1 KB。有什么方法更快?
重新创建文件之前,无需删除文件。您可以使用新内容覆盖它。你不能真正"合并"一个文件,因为在文件系统级别,块无论如何都会被完全覆盖,即使你只更改了1个字节。
如果您已经有要最终出现在文件中的内容,只需覆盖该文件即可。
如果您有依赖于现有文件的更新数据,请将文件读入内存(前提是它足够小(,合并内存中的数据,然后覆盖该文件。没那么复杂。
实际上不确定,但理论上合并内容 shd 更快。删除 n 创建意味着 - 删除文件的指针,创建新文件并为其分配内存和磁盘空间。 合并意味着分配已经存在,只需要扩展它。虽然合并现有文件内容不需要在要合并的新文件内容时调用内存,但在创建新文件时,整个文件都将在内存管理中调用。 除非有很多文件,否则随着时间的推移它会变成大文件,否则你不会注意到它