我在内存中的 char[] 缓冲区中有一个 jpeg 图像,我需要做的就是将它原封不动地写到磁盘上。我现在正在做这个
ofstream ofs;
ofs.open(filename);
ofs.write(buffer, bufferLen);
ofs.close();
但图像显示不正确,到处都是乱七八糟的黑白条纹。在十六进制查看器中将图像与原始图像进行比较后,我发现 ofstream 认为我在写换行符时正在修改数据。在原始文件中出现 0x0A 的任何地方,ofstream 都会写入两个字节:0x0D0A。我必须假设 ofstream 打算仅从 LF 转换为 CRLF,是否有标准方法让它不这样做?
最佳答案
关于c++ - 为什么 C++ ofstream write() 方法会修改我的原始数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1350243/