C++中fstream类对象,获取当前偏移量
时间: 2023-12-30 11:21:42
浏览: 174
C++_fstream的使用方法
你可以使用`tellg()`函数获取`f[stream](https://wenku.csdn.net/doc/6412b523be7fbd1778d42131?spm=1055.2569.3001.10083)`类对象当前的读指针位置,或者使用`tellp()`函数获取当前的写指针位置。例如:
```c++
#include <iostream>
#include <fstream>
[using](https://wenku.csdn.net/doc/645dfe355928463033a3cbec?spm=1055.2569.3001.10083) name[space](https://wenku.csdn.net/doc/64522ebaea0840391e739055?spm=1055.2569.3001.10083) std;
int main() {
ofstream ofs("test.txt", ios::app);
ofs << "Hello, [world](https://wenku.csdn.net/doc/20q7hftsd8?spm=1055.2569.3001.10083)!" << endl;
// 获取写指针位置
streampos pos = ofs.tellp();
cout << "当前写指针位置:" << pos << endl;
ofs.[close](https://wenku.csdn.net/doc/6401ac87cce7214c316ec2fa?spm=1055.2569.3001.10083)();
ifstream ifs("test.txt");
string line;
getline(ifs, line);
// 获取读指针位置
pos = ifs.tellg();
cout << "当前读指针位置:" << pos << endl;
ifs.close();
return 0;
输出结果为:
当前写指针位置:13
当前读指针位置:0
```
阅读全文