文件流的定位

Posted Respect@

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件流的定位相关的知识,希望对你有一定的参考价值。

这里写目录标题

seekg

seekg( off_type offset, //偏移量
ios::seekdir origin ); //起始位置
作用:设置输入流的位置
参数1: 偏移量
参数2: 相对位置
beg 相对于开始位置
cur 相对于当前位置
end 相对于结束位置

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main(void) {
	ifstream infile;

	infile.open("定位.cpp");
	if (!infile.is_open()) {
		return 1;
	}

	infile.seekg(-50, infile.end);
	while (!infile.eof()) {
		string line;
		getline(infile, line);
		cout << line << endl;
	}

	infile.close();

	system("pause");
	return 0;
}

tellg

返回该输入流的当前位置(距离文件的起始位置的偏移量)

获取当前文件的长度

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main(void) {
	ifstream infile;

	infile.open("定位.cpp");
	if (!infile.is_open()) {
		return 1;
	}

	// 先把文件指针移动到文件尾
	infile.seekg(0, infile.end);

	int len = infile.tellg();
	cout << "len:" << len;

	infile.close();
	system("pause");
	return 0;
}

seekp

设置该输出流的位置

demo
先向新文件写入:“123456789”
然后再在第4个字符位置写入“ABC”

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main(void) {
	ofstream outfile;

	outfile.open("test.txt");
	if (!outfile.is_open()) {
		return 1;
	}

	outfile << "123456789";

	outfile.seekp(4, outfile.beg);
	outfile << "ABC";

	outfile.close();
	system("pause");
	return 0;
}

在这里插入图片描述

以上是关于文件流的定位的主要内容,如果未能解决你的问题,请参考以下文章

Java生成二进制文件与Postman以二进制流的形式发送请求

CSS代码片段

CSS代码片段

流的定位

2.9定位

Selenium Xpath元素无法定位 NoSuchElementException: Message: no such element: Unable to locate element(代码片段