sstream简析

sstream简析3月20日关于C++中的sstream类C++程序把输入和输出看作字符流,输入时,程序从输入流中提取字节,输出时,程序把字节插入到输出流中。对于输入输出流既可以来自标准输入输出设备,也可以来自文件,甚至可以来自String对象,三者分别属于iostreamfamily、fstreamfamily、sstreamfamily。对于iostream类,就是我们通常所说的标

大家好,又见面了,我是你们的朋友全栈君。

3月20日

关于C++中的sstream类

C++程序把输入和输出看作字符流,输入时,程序从输入流中提取字节,输出时,程序把字节插入到输出流中。对于输入输出流既可以来自标准输入输出设备,也可以来自文件,甚至可以来自String对象,三者分别属于iostream family、fstream family、sstream family。

对于iostream类,就是我们通常所说的标准流,它把程序跟标准I/O连接在一起,输入来自键盘,输出送往监视器。

对于fstream类,它把程序跟文件关联起来,输入来自文件,输出到文件。

对于sstream类,它是提供程序和string对象之间的I/O,可通过ostringstream sout和istringstream sin来声明两个对象,分别对应输出流和输入流,这给编程带来极大的方便,例如可以从文本文件中读取一批数字字符到string对象中,再把string对象作为程序的输入流,既可把从文件中读取来的数字字符单个进行读取,从而进行处理。例如:

string line;

int word;

ifstream fin("test.txt");

while(getline(fin,line))   //

{

    istringstream sin(line);  //输入流重定向到string对象

    while(sin>>word)          //在string对象中读取数字

    {    ......               //处理

    }

}

当然了,输出也是一样的道理。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136610.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android Studio中Intel HAXM的那些坑「建议收藏」

    Android Studio中Intel HAXM的那些坑「建议收藏」最近用过两台电脑折腾AndroidStudio,都是windows的系统,不知道为什么连着踩了两个坑。第一台我结束了qemu-system-i386.exe这个倒霉的进程导致我开启模拟器的时候一直提示我没有安装IntelHAXM,没办法咯,只好再安装一遍,然后奇葩的事情就发生了,出现了以下问题。Excuseme?我CPU虚拟化是开启的呀。这是什么鬼?安装了一次,不…

    2022年6月28日
    46
  • vagrant在windows下的使用

    vagrant在windows下的使用

    2021年11月8日
    48
  • c++二叉树的先序,中序,后序遍历_二叉树的构造

    c++二叉树的先序,中序,后序遍历_二叉树的构造数据结构——二叉树先序、中序、后序三种遍历二叉树先序、中序、后序三种遍历三、代码展示:二叉树先序、中序、后序三种遍历先序遍历:32238654中序遍历:22334568后序遍历:23245683三种遍历不同之处在,输出数据放在不同之处三、代码展示:#include<stdio.h>#include<stdlib.h>typedefstructTree{int

    2022年9月14日
    3
  • pascal voc数据集下载_目标检测分类

    pascal voc数据集下载_目标检测分类一、简介PASCALVOC挑战赛主要有ObjectClassification、ObjectDetection、ObjectSegmentation、HumanLayout、ActionClassification这几类子任务PASCAL主页与排行榜PASCALVOC2007挑战赛主页、PASCALVOC2012挑战赛主页、PASC…

    2022年9月25日
    5
  • 日本优秀网站欣赏[通俗易懂]

    日本优秀网站欣赏[通俗易懂]http://www.quickhoney.com/http://www.charamil.com/http://www.b2caoyama.com/http://www.beams.co.jp/http://www.diadem.ru/http://www.taisei-kodaitoshi.com/http://www.sonymusic.co.jp/http://…

    2025年7月4日
    1
  • redis过期策略六种(java的内存回收机制)

    Redis缓存作为提高系统性能最好的方式相信大家对其一定不陌生,各位作为秃头老码农不仅需要掌握Redis的基础用法还得了解Redis的相关原理,比如Redis过期策略和内存淘汰机制。大家都知道,Redis缓存使用的是内存资源,虽然缓存服务器会配置比较高的内存资源,但如果对于Redis中的缓存数据我们不管不顾,内存资源总有耗尽的时候,这时缓存服务器就无法再对外提供服务了。我们要用有限的服务器资源支撑…

    2022年4月17日
    59

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号