C++流操作

C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含这个头文件。

在C++中标准库提供三个类用于文件操作,统称为文件流类:

  1. ifstream:专用于从文件中读取数据;
  2. ofstream:专用于向文件中写入数据;
  3. fstream:既可用于从文件中读取数据,又可用于向文件中写入数据

C++程序把输入和输出看作字符流,输入时,程序从输入流中提取字节,输出时,程序把字节插入到输出流中。对于输入输出流既可以来自标准输入输出设备,也可以来自文件,甚至可以来自string对象,三者分别属于iostream family、fstream family、sstream family。
对于iostream类,就是我们通常所说的标准流,它把程序跟标准I/O连接在一起,输入来自键盘,输出送往监视器。
对于fstream类,它把程序跟文件关联起来,输入来自文件,输出到文件。
对于sstream类,它是提供程序和string对象之间的I/O,可通过ostringstream sout和istringstream sin来声明两个对象,分别对应输出流和输入流,这给编程带来极大的方便,例如可以从文本文件中读取一批数字字符到string对象中,再把string对象作为程序的输入流,既可把从文件中读取来的数字字符单个进行读取,从而进行处理。

默认通过空格(或回车)来分割字符串输入,即区分不同的字符串输入。 

#include
#include
#include
#include
#include

using namespace std;
/*以|为分隔符,读取字符串*/
vector getBugs(string words)
{
	vector results;
	istringstream ss(words);
	while (!ss.eof())
	{
		string word;
		getline(ss, word, '|');
		results.emplace_back(word);
	}
	return results;
}

int main()
{
	vector  ss = getBugs("fdfd|2w3|hgggfer");


	return 0;
}

你可能感兴趣的:(C++,c++,开发语言)