第八章 IO库
8.1 IO类
1、IO对象无拷贝或赋值
我们不能拷贝或对IO对象赋值
2、IO流的条件状态
可以使用循环判断流条件来读取文件
3、管理输出缓冲
endl、ends、flush
8.2 文件输入输出
1、fstream特有的操作
2、创建文件流
创建文件流时,如果给构造函数一个默认的文件名参数的话,就默认当作已经调用了open函数。否则需要在之后关联后再调用open函数。
3、可以用子类代替父类
fstream继承自iostream, 所以可以将fstream当作函数参数传入需要iostream的参数的函数里面
4、open和close
只有用close关闭当前关联的文件后,才能再次用open关联新的文件
进行open是否成功的检测是一个好习惯
5、自动构造和析构
6、文件模式
7、ofstream默认模式为 out || trunc
每当用ofstream打开文件时都会以输出截断模式打开,文件里的内容都会不见。
想要关闭截断模式,就必须显示的以app模式打开
注意这里使用的是ofstream::app,而不是fstream::app
8.3 string流
需要使用sstream头文件
1、基本用法
2、特有操作
3、istringstream的用法
当输入一行字符串,并且需要对这行字符串切片处理时,用到istringstream就是极佳的选择。