我正在开发一个需要编写数百个 ASCII 文件的 C++ 程序。这些文件几乎相同。特别是,文件的大小始终完全相同,它们之间只有几个字符不同。
为此,我目前正在使用 fopen 上的 for 循环打开 N 个文件,然后为每个数据块(每隔几个字符)在每个文件上调用 fputc/fwrite。这似乎可行,但感觉应该有一些更有效的方法。
我可以做些什么来减少文件系统的负载和/或提高速度吗?例如,保持数百个文件打开并一点一点地写入所有文件对文件系统的负担有多大?打开一个文件,完全写入一个文件,关闭它,然后再继续下一个文件会更好吗?