#include <sstream>
1 std::istringstream
2 std::stringstream
1 std::istringstream
input
1 在一个字符串string里提取部分数据,这些数据以空格' '为间隔。
以空格' '为间隔,可以直接提取
#include <iostream>
#include <sstream> struct MyStruct
{
std::string str1, str2, str3;
double db;
int num;
char ch;
}; void main()
{
std::string mystring("china google microsoft 12.9 123 A");//创建一个字符串,用于提取
MyStruct struct1;//创建一个结构体,用于保存结果 std::istringstream input(mystring);//创建一个字符串扫描流
input >> struct1.str1 >> struct1.str2 >> struct1.str3 >> struct1.db >> struct1.num >> struct1.ch;//扫描 std::cout << struct1.str1 << std::endl;//打印
std::cout << struct1.str2 << std::endl;
std::cout << struct1.str3 << std::endl;
std::cout << struct1.db << std::endl;
std::cout << struct1.num << std::endl;
std::cout << struct1.ch << std::endl; system("pause");
}
2 在一个字符串string里提取部分数据,这些数据以'#'为间隔。
以'#'为间隔,要多处理一步,先把'#'查找和替换成空格' ',再提取
#include <iostream>
#include <sstream> struct MyStruct
{
std::string str1, str2, str3;
double db;
int num;
char ch;
}; void main()
{
char mystring[] = "china#google#microsoft#12.9#123#A";//创建一个字符串,用于提取 for (char *p = mystring; *p != '\0'; p++)//查找和替换#
{
if (*p == '#')
{
*p = ' ';
}
} MyStruct struct1;//创建一个结构体,用于保存结果 std::istringstream input(mystring);//创建一个字符串扫描流
input >> struct1.str1 >> struct1.str2 >> struct1.str3 >> struct1.db >> struct1.num >> struct1.ch;//扫描 std::cout << struct1.str1 << std::endl;//打印
std::cout << struct1.str2 << std::endl;
std::cout << struct1.str3 << std::endl;
std::cout << struct1.db << std::endl;
std::cout << struct1.num << std::endl;
std::cout << struct1.ch << std::endl; system("pause");
}
2 std::stringstream
使用&拼接字符串,执行两个system命令
#include <iostream>
#include <sstream> void main()
{
std::stringstream mystr;//字符串进行输入 char cmd1[] = { };//创建字符串
char cmd2[] = { };//创建字符串 std::cin.getline(cmd1, ).getline(cmd2, );//字符串赋值 mystr << cmd1 << '&' << cmd2;//输出到mystr std::string str = mystr.str();//转换 system(str.c_str());//执行 system("pause");
}
#include <sstream>的更多相关文章
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- Entity Framework 6 Recipes 2nd Edition(13-9)译 -> 避免Include
问题 你想不用Include()方法,立即加载一下相关的集合,并想通过EF的CodeFirst方式实现. 解决方案 假设你有一个如Figure 13-14所示的模型: Figure 13-14. A ...
- error RC1015: cannot open include file 'afxres.h' 解决办法
在为WindowsPhone8程序添加本地化的过程中遇到这个问题: 问题原因就是afxres.h文件缺失,下载它,放到VS安装目录下的VS\include目录下就可以了(选择目录的时候注意对应对版本) ...
- Mybatis常用总结:参数,返回,执行sql,include等
1.参数注入1.1用#{0},#{1}的形式,0代表第一个参数,1代表第二个参数 public List<RecordVo> queryList(String workerId, Inte ...
- jsp中的@include与jsp:include区别详解
1 前言 搞java开发的人也许都知道在jsp中引入项目中其他文件有如下两种方式 <%@include file="xxx.jsp"%> <jsp:include ...
- JSP中编译指令include与动作指令include的区别
include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改, 否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如 ...
- C/C++ 中的include
当需要使用已有的方法或库时, 可以将它们的头文件#include进来. #include会在preprocess过程中被替换成它包含的代码. 头文件中包含了需要使用的函数/变量的声明. 当然声明与定义 ...
- 织梦多语言站点,{dede:include filename=''/}引入问题
织梦模板include插入非模板目录文件出现"无法在这个位置找到"错误的解决办法 以下是dede V55_UTF8 查dede include标签手册 (3) include 引入 ...
- PHP 站点相对包含,路径的问题解决方法(include,require)
以前看了,很多框架,基本上很少使用相对路径包含.而一般很多做php web站点,喜欢用相对路径. 认为这样,无论目录放到那里. 只要跟另外目录关系一致.那么就不会出现问题.如果一个站点,一般都认为,如 ...
- 如何让include标签包裹的布局置于屏幕最下方?
如何让一个Layout 始终在屏幕的下方 我想让<include layout="@layout/bottom" />一直在屏幕下,怎么做? 1.相对布局中用属性 a ...
随机推荐
- MYSQL 为表指定文件位置 data directory
背景知识: 如果表不指定文件位置,它会保存到 data/database_name/table_file;其中data在你指定的安装目录下,为了提高IO我们尽可能的 用到多个硬盘的IO能力,这个就需要 ...
- MSBI常见问题总结
SSIS 1.对连接管理器“DC”的AcquireConnection方法调用失败,错误代码0xC0209303.可能在此之前已经发出错误消息,提供了有关AcquireConnection方法调用失败 ...
- ZigBee 技术简介
Zigbee是IEEE 802.15.4协议的代名词.根据这个协议规定的技术是一种短距离.低功耗的无线通信技术.这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅 ...
- C语言的本质(27)——C语言与汇编之计算机结构
现代计算机都是基于冯·诺依曼或哈佛体系结构的,不管是嵌入式系统.个人电脑还是服务器.这种两种体系结构的主要特点是:CPU和内存是计算机的两个主要组成部分,内存中保存着数据和指令,CPU从内存中取指令执 ...
- JIRA官方:缺陷与事务跟踪
快速跟踪软件缺陷 JIRA的网站页面使测试人员能够快速报告.管理.跟踪缺陷.使用键盘快捷键可以很容易地导航和修改问题.你还可以从IDE直接访问JIRA问题或者通过其它各种桌面客户端.手机客户端.浏览器 ...
- Curly braces in Python in 2012? - Stack Overflow
Curly braces in Python in 2012? - Stack Overflow Curly braces in Python in 2012? [closed]
- 超越css读书笔记
一.运用所有有效的css选择符 1.属性选择符(基于一个元素是否有属性名称,例如href,或者属性值) 例如:img[alt]{border:1px;} 所有包含alt属性的图像都将会有一个灰色的边框 ...
- iOS Xcode工程目录的 folder 和 group的区别(蓝色和黄色文件夹的区别)
1. 来自 http://blog.csdn.net/fanjunxi1990/article/details/9352917 XCode工程目录里面,有时你会发现2个不同颜色的文件夹,一种是蓝色的, ...
- RPATH与RUNPATH
RPATH与RUNPATH 时间 2011-11-01 21:46:44 Qt Labs China 原文 http://labs.qt.nokia.com.cn/2011/11/01/rpath- ...
- 网易云课堂_C++开发入门到精通_章节3: 类、对象和封装
课时12构造函数与析构函数-2 构造函数 构造函数可以有多个 构造函数可以重载 构造函数用于隐式类型转换 class Student { public: explicit Student(int ss ...