文件流判断文件大小
时间: 2023-08-06 22:05:51 浏览: 177
你可以通过以下步骤来判断文件的大小:
1. 打开文件流并定位到文件末尾
2. 获取文件指针的位置,即文件大小
3. 关闭文件流
下面是一个示例代码:
```c++
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream file("example.txt", ios::binary | ios::ate);
if (file.is_open())
{
// 获取文件指针位置,即文件大小
int size = file.tellg();
cout << "File size is: " << size << " bytes." << endl;
// 关闭文件流
file.close();
}
else
{
cout << "Unable to open file" << endl;
}
return 0;
}
```
在上面的示例代码中,我们打开了一个名为 "example.txt" 的文件流,并使用 `ios::binary` 标志打开它。接着,我们使用 `ios::ate` 标志将文件指针定位到文件末尾,并使用 `tellg()` 函数获取文件指针的位置,即文件大小。最后,我们关闭了文件流。
注意:上述代码中的 `int` 类型可能不适用于大型文件,因为文件大小可能超出 `int` 类型的范围。在这种情况下,你可以使用 `long long` 或 `streamsize` 类型来保存文件大小。
阅读全文