如何获取二进制文件的存储数据长度
时间: 2023-09-26 08:10:04 浏览: 111
C# 向二进制文件进行读写的操作方法
要获取二进制文件的存储数据长度,你可以使用文件流(`fstream`)来实现。下面是一个示例代码来演示如何获取二进制文件的存储数据长度:
```cpp
#include <iostream>
#include <fstream>
std::streampos getFileSize(const std::string& filename) {
std::ifstream file(filename, std::ios::binary | std::ios::ate);
if (file) {
// 获取文件大小
std::streampos fileSize = file.tellg();
file.close();
return fileSize;
} else {
std::cerr << "无法打开文件" << std::endl;
return -1;
}
}
int main() {
std::string filename = "binary_file.bin";
// 获取二进制文件的存储数据长度
std::streampos fileSize = getFileSize(filename);
if (fileSize >= 0) {
std::cout << "文件大小为: " << fileSize << " 字节" << std::endl;
}
return 0;
}
```
在上述示例代码中,`getFileSize`函数打开二进制文件,并使用`std::ios::ate`标志将文件指针移动到文件末尾,然后使用`tellg()`函数获取文件指针的当前位置,即文件大小。请注意,返回的文件大小单位是字节(bytes)。你可以根据自己的需求修改文件名和路径。
阅读全文