如何把字符串"192,168,1,100"转化为"192.168.1.100"
2014-06-20 23:02
615 查看
方式一:通过字符串流的方式转化
istringstream 相当于 C语言的sprintf
ostringstream 相当于C语言的sscanf
#include <iostream> #include <string> #include <sstream> using namespace std; int main() { //第一种方式 /* string str="192,168,1,100"; int v1=0,v2=0,v3=0,v4=0; char ch; istringstream iss(str); iss>>v1>>ch>>v2>>ch>>v3>>ch>>v4; ch='.'; ostringstream oss; oss<<v1<<ch<<v2<<ch<<v3<<ch<<v4; cout<<oss.str()<<endl; */ //第二种方式 string str="192,168,1,100"; int v1=0,v2=0,v3=0,v4=0; char ch; /* stringstream ss1("192,168,1,100");*///如果以这种方式传递数据,则会调用其内部的缓冲区streambuf stringstream ss1(str);//如果str以这种方式传递数据,则会把str缓冲区和其内部的缓冲区streambuf相绑定 ss1>>v1>>ch>>v2>>ch>>v3>>ch>>v4; ch='.'; stringstream ss2; ss2<<v1<<ch<<v2<<ch<<v3<<ch<<v4; cout<<ss2.str()<<endl; /*ss1<<v1<<ch<<v2<<ch<<v3<<ch<<v4;//如果不重新声明stringstream的新对象,则会调用其前面的str的缓冲区,str的内容是是192,168,1,100 cout<<ss1.str()<<endl;*/ return 0; }
istringstream 相当于 C语言的sprintf
ostringstream 相当于C语言的sscanf
相关文章推荐
- 一个把List<String>转化为以","隔开的字符串的方法
- 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
- @"[ 1,-1, 1,3,4]"形式的字符串转化为数组
- 用c语言实现从一个只包含数字的字符串转化为和字符串一样的整数(比如从"12345"转化为整数12345)
- 一个把List<String>转化为以","隔开的字符串的方法
- 把List<String>转化为以","隔开的字符串的方法
- 转换字符串,undefined,null等转化为""
- 将js发送的"*,*,*,。。。"格式字符串转化为list
- @"[ 1,-1, 1,3,4]"形式的字符串转化为数组
- 如何把“time=1330443881769”转化为"yyyy-MM-dd HH:mm:ss"
- 如何恢复"快速启动栏"的"显示桌面"项?
- 如何将java中的反斜线替换为"/"
- 如何把字符串转化为unicode编码
- 请问如何把字符串"E2"转换成16进制并用byte保存?
- 如何使 FlashGet "正常合法" 下载 Session 中的自定义文件链接呢? JSP/Servlet 实现!
- 如何使用"MySQL-Proxy"实现读写分离
- 开机突然出现"NTLDR is miss"该如何处理
- "电子表格"如何导入"网页表格"数据
- vb.net反射中如何将字符串转化为对象实例
- 无法转化为项目财富的技术或功能就是"垃圾" [转]