stringstream操纵string的方法总结
2016-12-20 10:51
543 查看
1 split字符串
之前在用C#写代码的时候,用过split函数,可以把一个字符串根据某个分隔符分成若干个字符串数组。在用C++操纵字符串的时候,我一直使用很笨的遍历的方法。为此,我问候过很多次C++标准委员会。直到某一天,我做了一个处理绝对路径的题目。
首先,我要把‘/'作为分隔符,把输入字符串split一下。下面是我的代码:
string inputString("/home/fun/./../code/"); stringstream ss(inputString); string tmp; while(getline(ss,tmp,'/')) { if(tmp.empty()) continue; bulabula; }
神奇的是getline函数,此函数配合stringstream使用,就实现了split函数的功能。简直历害!
2 格式化输入
当我们有一个字符串需要解析的时候,可以使用stringstream。
string inputString("123abc 123.4one two three four"); stringstream ss(inputString); string s; int i; double d; ss >> i >> s >> d; cout << i << " " << s.c_str() << " " << d ; while (ss >> s) cout <<" "<<s.c_str(); cout << endl;
输出:
123 abc 123.4 one two three four
是不是很好用呢?不过要注意,当我们使用>>来格式化输入数值型变量的时候,后面是不需要跟空格的,而使用>>来格式化输入string或char*的时候,后面一定要跟空格。当然格式化输入string,我们也可以使用getline(ss,s,' ')。一样的效果。
有标准库用的时候,还是要用的,事半功倍!
以上就是小编为大家带来的stringstream操纵string的方法总结全部内容了,希望大家多多支持脚本之家~
您可能感兴趣的文章:
相关文章推荐
- stringstream操纵string小总结
- stringstream操纵string小总结
- 来自MSDN中对String的一些方法的总结
- PHP中的魔术方法总结[__construct/__destruct/__get/__set/__isset/__unset/__toString/__clone等]
- Java String.Format() 方法及参数 详细说明 总结篇
- String和datetime在SQL中和在C#中相互转换方法总结
- 复习总结C#中的string的常用容易混乱的方法
- JavaScript中Stringd对象方法总结
- javascript中数组array及string的方法总结
- C#string取指定位的几种方法总结
- String方法总结
- String 常用方法总结
- STD中string的常用方法总结[zz]
- String.spit()的使用方法总结
- string和各内置类型的互换方法(stringstream的一种用法)
- String.Trim()方法总结
- 有关JAVA中不同方法对String连接性能的总结
- STD中string的常用方法总结
- String和StringBuffer 常用方法总结
- JavaScript中的String字符串对象的方法总结: