在C ++中读取和更改文件的前8个字节的最快方法是什么?我不想将整个文件存储在内存中,因为如果我要编辑10GB文件的前8个字节,该程序将非常慢,并且内存效率非常低。有没有一种方法可以先读取然后更改文件的前n个字节,而无需在内存中打开文件?
您可以使用std::fstream
获得所需的内容。使用此示例:
#include <fstream>
int main() {
std::fstream s("file.txt");
s.seekp(0, std::ios_base::beg);
char data[] = "abcdabcd";
s.write(data, sizeof data);
}