c++二进制文件读取
时间: 2023-10-18 13:58:31 浏览: 83
你可以使用 C++ 的文件流来读取二进制文件。以下是一个简单的例子,演示如何读取二进制文件并将其内容打印出来:
```cpp
#include <iostream>
#include <fstream>
int main() {
std::ifstream file("binary_file.bin", std::ios::binary);
if (!file) {
std::cerr << "Failed to open the file." << std::endl;
return 1;
}
// 获取文件大小
file.seekg(0, std::ios::end);
std::streampos fileSize = file.tellg();
file.seekg(0, std::ios::beg);
// 分配内存来存储文件内容
char* buffer = new char[fileSize];
// 读取文件内容
file.read(buffer, fileSize);
// 打印文件内容
for (std::streamsize i = 0; i < fileSize; ++i) {
std::cout << buffer[i];
}
// 释放内存并关闭文件
delete[] buffer;
file.close();
return 0;
}
```
在这个例子中,我们首先使用 `ifstream` 打开了一个名为 `binary_file.bin` 的二进制文件,将打开模式设置为 `ios::binary`。然后,我们通过 `seekg` 和 `tellg` 获取了文件的大小,并根据文件大小动态分配了足够的内存来存储文件内容。接下来,我们使用 `read` 函数将文件内容读取到内存缓冲区中,并使用一个循环打印出文件内容。最后,我们释放了内存并关闭了文件。
请注意,这只是一个简单的示例,你可能需要根据你的具体需求进行适当的修改和错误处理。
阅读全文