首页 > 代码库 > 第八篇:使用字符串流对象进行格式转换
第八篇:使用字符串流对象进行格式转换
前言
字符串流对象有个很实用的功能就是格式转换。比如可以将整数类型的123转换成字符串格式的123,或者反过来。那么具体又是如何实现的?且看下文。
实现思路
对于整数转换成字符串格式,可设s是一个空的字符串流对象,” 整型变量 “存放目标整数。则当执行" s << 整型变量 "后,该整数将转成字符串格式并存进流中。随后代码中使用" s.str() "即可获取到该整数的字符串格式。对于字符串转换成整数格式,亦可设s是一个空的字符串流对象,” 整型变量 “存放转换结果。可先将目标字符串存放进字符串流对象,然后执行" s >> 整型变量 “。此后该整型变量既是目标字符串的整数格式。
示例代码1:整数格式 -> 字符串格式
1 #include <iostream> 2 // 使用字符串流对象记得包含此头文件 3 #include <sstream> 4 5 using namespace std; 6 7 int main() 8 { 9 int num;10 cout << "请输入要转换的整数: " << endl;11 cin >> num;12 13 stringstream s;14 s << num;15 cout << "转换完毕..." << endl << endl;16 17 cout << "整数格式: " << num << endl;18 cout << "字符串格式: " << s.str() << endl;19 20 return 0;21 }
运行结果:
示例代码2:字符串格式 -> 整数格式
1 #include <iostream> 2 // 使用字符串流对象记得包含此头文件 3 #include <sstream> 4 5 using namespace std; 6 7 int main() 8 { 9 string st;10 cout << "请输入要转换的字符串: " << endl;11 cin >> st;12 13 stringstream s(st);14 int num;15 s >> num;16 cout << "转换完毕..." << endl << endl;17 18 cout << "字符串格式: " << s.str() << endl;19 cout << "整数格式: " << num << endl;20 21 return 0;22 }
运行结果:
第八篇:使用字符串流对象进行格式转换
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。