2010-08-10 77 views
0

我有一个二进制文件,我需要在开头插入一个头文件。我正在考虑打开一个新文件,写入标题数据,然后将数据从二进制文件复制到这个新文件。由于二进制文件大约是1兆字节,使用fwrite制作这个文件有没有什么危险?一个特殊的问题就是无意中覆盖数据,类似于如果使用get并且输入比缓冲区长的话。合并两个未知大小文件的潜在危险?

回答

1

没有风险。分配一个给定大小的缓冲区,从源文件中读入许多字节,将缓冲区写回到目标文件。这些操作(文件读取/文件写入)都会占用最大的字节数,只要缓冲区是您声称的大小,它就不会超出范围。

此外,您描述的方法几乎是唯一的方法来做到这一点。我从来没有听说过有一个“在这个文件的开头插入这些字节”操作的文件系统。

+0

太棒了,谢谢! – Jade 2010-08-10 19:35:58

相关问题