在C++中,要打开一个二进制文件,你可以使用std::ifstream类。以下是一个简单的示例,展示了如何使用std::ifstream打开一个名为binary_file.bin的二进制文件并读取其内容:
#include
#include
#include
int main() {
// 打开二进制文件
std::ifstream file("binary_file.bin", std::ios::binary | std::ios::ate);
if (!file) {
std::cerr << "无法打开文件" << std::endl;
return 1;
}
// 获取文件大小
std::streamsize file_size = file.tellg();
file.seekg(0, std::ios::beg);
// 读取文件内容到vector中
std::vector<char> data(file_size);
if (!file.read(data.data(), file_size)) {
std::cerr << "读取文件失败" << std::endl;
return 1;
}
// 关闭文件
file.close();
// 处理文件内容(例如:打印)
for (char byte : data) {
std::cout << static_cast<int>(byte) << " ";
}
std::cout << std::endl;
return 0;
}
在这个示例中,我们首先使用std::ifstream打开名为binary_file.bin的文件,并指定std::ios::binary标志以表示我们要打开的是一个二进制文件。std::ios::ate标志表示我们要立即定位到文件末尾。
接下来,我们检查文件是否成功打开。如果没有,我们输出错误信息并返回1。
然后,我们获取文件的大小,将其存储在file_size变量中,并将文件指针移回文件开头。
接下来,我们创建一个std::vector对象,用于存储文件内容。我们使用file.read()函数读取文件内容,并将其存储在data向量中。
最后,我们关闭文件,并处理文件内容(在这个示例中,我们只是将其打印到控制台)。
以上就是关于“c++ open函数怎样打开二进制文件”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm