当前位置:网站首页 > 技术博客 > 正文

c++文件输入输出fstream



 
  

  • 处理控制台 IO
  • 处理命名文件 IO
  • 完成内存 string 的IO

每个IO 对象都维护一组条件状态 flags (eofbit, failbit and badbit),用来指出此对象上是否可以进行 IO 操作。如果遇到错误—例如输入流遇到了文件末尾,则对象的状态变为是失效,所有的后续输入操作都不能执行,直到错误纠正。

头文件 包含的多个文件流类,这里列出常用的4个:

  • Input file stream class (class )链接
  • Output file stream (class )链接
  • Input/output file stream class (class )链接
    filebuf File stream buffer (class )链接

Public member functions

1.

  • 第一种不绑定文件, 绑定。
  • 第二种 ,读取模式默认参数为 可以省略。
 
  

2.

打开文件,模式默认

 
  

函数参数:

  • 要打开文件的文件名
  • 打开文件的方式
member constant stands for access in input File 读的方式打开文件 out output 写的方式打开文件 binary binary 方式打开 ate at end 打开的时候定位到文件末尾 app append 所有操作都定位到文件末尾 trunc truncate 丢弃打开前文件存在的内容

3.

 
  

文件流对象与文件绑定,返回 true ,否则 false 。

4.

 
  

5.

 
  

返回一个 filebuf 对象指针,(The pointer to the internal filebuf object.)

6.

 
  

等号运算符禁止使用,可以使用。(即右边的值必须是一个即将销毁的临时对象)

7.

输入终端 和 都是 的子类,所以 用法相同。对变量进入输入的时候重载了常用的数据类型。

 
  

8.

 
  

返回最后一个输入操作读取的字符数目。
可以修改这个返回值的函数有:,,,,, , and . 其中函数 被调用后返回值为0。

9.

 
  

下面的程序演示读取到 的用法。

 
  

10.

读取一行到字符数组。

 
  
 
  

用法:
从流对象中读取一行存到字符串 直到遇到截止字符,,然后丢弃(它不被存储,下一个操作的起点在它之后)函数调用前 中的内容将被覆盖。
demo: 读取文件流的内容

 
  

11.

 
  

从输入流中读取n个字符并且丢弃,或者读到delim字符再停止读取。

12.

 
  

返回输入流下一个字符,并把它留在输入流中,作为下一次读取的起点。返回值是整形ascll码值,可以用 char© 转化为字符。

13.

 
  

从输入流中提取n个字符,并把他们存数组s中,不检测内容,也不加字符串结尾符号‘0’,实例:

 
  

14.

 
  

15.

 
  

16.

读取输入流中文件指针的位置,返回值可转化为 int。

 
  

17.

设定输入流中文件指针的位置。(1) (2)

 
  
  • 参数 是流中的可以转化为 int
  • 参数 是,与way相关,类型是 int
  • 参数 可以选下表中的。
value offset is relative to… ios_base::beg beginning of the stream ios_base::cur current position in the stream ios_base::end end of the stream

18.

 
  

检测流的状态是否正常。当错误的状态*flags (eofbit, failbit and badbit) *都没被设置的时候返回true

特定的错误状态可以用下面的函数(eof, fail, and bad)来检测。

iostate value (member constant) indicates good() eof() fail() bad() rdstate() goodbit No errors (zero value iostate) true false false false goodbit eofbit End-of-File reached on input operation false true false false eofbit failbit Logical error on i/o operation false false true false failbit badbit Read/writing error on i/o operation false false true true badbit

19.

 
  

20.

布尔运算: 当流对象单独出现在条件语句中时,就间接调用布尔运算。
如:
函数原型:
c++98:
c++11:



返回值: 或 都没被标记的时候返回真。
(对比good(): failbit 或 badbit 或 eofbit 都没被标记的时候返回真)

 
  
 
  

                            

版权声明


相关文章:

  • 王码五笔86版字根口诀2025-08-27 08:00:59
  • 均聚甲醛牌号2025-08-27 08:00:59
  • opengl 教程2025-08-27 08:00:59
  • 键盘鼠标记录大师怎么用2025-08-27 08:00:59
  • java中网络编程三要素2025-08-27 08:00:59
  • gensim中文文档2025-08-27 08:00:59
  • windows edge怎么更新2025-08-27 08:00:59
  • css各种选择器2025-08-27 08:00:59
  • matlab函数有哪些2025-08-27 08:00:59
  • opencv rgb转灰度2025-08-27 08:00:59