c++ - 如何在 C++ 中将二进制文件附加到二进制文件

标签 c++ iostream binaryfiles

我有两个二进制文件,我想将一个附加到另一个。 我该怎么做?

std::ofstream outFile;
outFile.open( "file.bin", ? );

嵌套线应该是什么?

最佳答案

有一个衬里:

std::ofstream outFile("file.out", std::ios::ate );
std::ifstream inFile( "file.in" );

std::copy( 
    (std::istreambuf_iterator<char>(inFile)),  // (*)
     std::istreambuf_iterator<char>(),
     std::ostreambuf_iterator<char>(outFile)
);

(*) 额外的一对括号以防止将其解析为函数声明。

为了获得更好的性能,您可以使用 ifstream::read 分块读取文件并使用 ofstream::write 写入它们。

关于c++ - 如何在 C++ 中将二进制文件附加到二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21991064/

相关文章:

c++ - C++98 中的 float 比较

c++ - 具有直接输出缓冲区/字符串结果访问的 std::stringstream,避免复制?

c++ - 如何在 C++ 17 中使用变量正确格式化输出字符串?

linux - 使用md5从目录中删除相同的二进制文件

c - 将二进制读入字符串c

c++ - 我想使用 ofstream 在 cpp 中创建一个文本文件

c++ - 使用伪代码协助 C++(溢出/下溢)

c++ - 在 UI 上维护 Qt 标签和文本的好方法

c++ - C++中的Exe文件的结尾

java - 无法从二进制文件读取对象信息,Java