c++ 读取文件二进制内容
时间: 2023-09-03 18:06:22 浏览: 142
读取文件内容并以二进制(16进制)显示.读取文件内容以16进制编码显示
5星 · 资源好评率100%
你可以使用C++的文件流来读取文件的二进制内容。下面是一个简单的示例代码:
```cpp
#include <iostream>
#include <fstream>
int main() {
std::ifstream file("example.bin", std::ios::binary); // 打开二进制文件
if (file) {
// 获取文件长度
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);
// 输出文件内容
std::cout << "File content:\n";
for (std::streampos i = 0; i < fileSize; ++i) {
std::cout << buffer[i];
}
// 清理资源
delete[] buffer;
file.close();
} else {
std::cout << "Failed to open the file\n";
}
return 0;
}
```
在上面的示例中,我们使用`std::ifstream`来打开一个二进制文件。然后,我们使用`seekg`函数获取文件长度,并使用`tellg`函数获取当前读取位置。接下来,我们创建一个缓冲区来存储文件内容,并使用`read`函数将文件内容读取到缓冲区中。最后,我们输出文件内容,并在结束时清理资源并关闭文件流。
请注意,以上示例中的文件名为"example.bin",你需要根据你的实际文件名进行修改。另外,还应该进行错误检查以确保文件成功打开和读取。
阅读全文