【发布时间】:2019-04-01 14:13:59
【问题描述】:
在这个操作中,我首先复制我的源二进制文件。
然后我希望从特定偏移量开始覆盖复制文件中的字节。
我用seekp(offset,std::ios::beg) 移动到所需的位置,然后开始覆盖过程
file.write(reinterpret_cast<const char*>(&my_vector[0]), my_vector.size()*sizeof(unsigned char));
然后关闭文件。
当我在十六进制编辑器中打开已处理的文件时,我在开始写入的偏移量之前看到的所有字节都是零,并且我使用此操作写入的字节已成功写入。
流的模式是std::fstream(path, std::ios::out | std::ios::binary);
我在这个操作中有什么遗漏吗?
【问题讨论】:
-
顺便问一下,在提问之前,我搜索了 4-5 次类似的问题,但似乎没有找到这个,谢谢。
-
这不是一个精确副本,但有你想要的信息。