sstream

来源:互联网 发布:hadoop 2.7.2 windows 编辑:程序博客网 时间:2024/06/09 19:48

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


istringstream类用于执行C++风格的串流的输入操作。 
ostringstream类用于执行C风格的串流的输出操作。 

strstream类同时可以支持C风格的串流的输入输出操作。

istringstream类是从istream(输入流类)和stringstreambase(c++字符串流基类)派生而来,ostringstream是从ostream(输出流类)和stringstreambase(c++字符串流基类)派生而来,stringstream则是从iostream(输入输出流类)和和stringstreambase(c++字符串流基类)派生而来。


istringstream的构造函数原形如下: 
istringstream::istringstream(string str); 

ostringstream的构造函数原形如下: 
ostringstream::ostringstream(string str);

stringstream的构造函数原形如下: 
stringstream::stringstream(string str);


利用stringstream的getline方法可以实现字符串的分割

#include<iostream>#include<string>#include<sstream>using namespace std;int main(){string path = "/a/./b/../../c//fool/";stringstream ss(path);string t;while (getline(ss, t, '/'))cout << "t:  " << t << endl;system("pause");return 0;}


可以看出这个以'/'前面的字符为起点,若path中的第一个字符为'/',t的输出为"";若两个'/'之间没有字符,也会输出一个""。




原创粉丝点击