我想打开一个包含 16 位有符号数据的文件(大约 400kb),进行一些计算(例如 output[i] = input[i] - input[i-1]),然后将输出写入新文件。
我对 C++ 中这么简单的事情有点困惑:我知道如何在文件中写入文本,但不知道原始数据。一个小的工作示例会很棒!
最佳答案
这里是读写操作。
#include <fstream>
ifstream infile("input", ios_base::binary);
int16_t in[100], out[100];
infile.read(reinterpret_cast<char*>(in), sizeof in);
...
ofstream outfile("output", ios_base::binary);
outfile.write(reinterpret_cast<char*>(out), sizeof out);
但还有很多工作要做,例如错误检查、动态分配、字节顺序。
关于c++ - 读取包含 16 位签名数据的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18433205/