前面章节中,已经给大家介绍了文件流对象如何调用 open() 方法打开文件,并且在读写(又称 I/O )文件操作结束后,应调用 close() 方法关闭先前打开的文件。那么,如何实现对文件内容的读写呢?接下来就对此问题做详细的讲解。

在讲解具体读写文件的方法之前,读者首先要搞清楚的是,对文件的读/写操作又可以细分为 2 类,分别是以文本形式读写文件和以二进制形式读写文件。

1) 我们知道,文件中存储的数据并没有类型上的分别,统统都是字符。所谓以文本形式读/写文件,就是直白地将文件中存储的字符(或字符串)读取出来,以及将目标字符(或字符串)存储在文件中。

2) 而以二进制形式读/写文件,操作的对象不再是打开文件就能看到的字符,而是文件底层存储的二进制数据。更详细地讲,当以该形式读取文件时,读取的是该文件底层存储的二进制数据;同样,当将某数据以二进制形式写入到文件中时,写入的也是其对应的二进制数据。

举个例子,假设我们以文本形式将浮点数 19.625 写入文件,则该文件会直接将 "19.625" 这个字符串存储起来。当我们双击打开此文件,也可以看到 19.625。值得一提的是,由非字符串数据(比如这里的浮点数 19.625)转换为对应字符串(转化为 "19.625")的过程,C++ 标准库已经实现好了,不需要我们操心。

但如果以二进制形式将浮点数 19.625 写入文件,则该文件存储的不再是 "19.625" 这个字符串,而是 19.625 浮点数对应的二进制数据。以 float 类型的 19.625 来说,文件最终存储的数据如下所示:

<

c语言 如何创建txt文件,C++文本文件读写操作详解相关推荐

  1. C++文本文件读写操作详解

    C++文本文件读写操作详解 前面章节中,已经给大家介绍了文件流对象如何调用 open() 方法打开文件,并且在读写(又称 I/O )文件操作结束后,应调用 close() 方法关闭先前打开的文件.那么 ...

  2. C语言文件读写操作详解

    C语言/C++中文帮助文档免积分下载(点击跳转) 当文件按指定的工作方式打开以后,就可以执行对文件的读和写.下面按文件的性质分类进行操作.针对文本文件和二进制文件的不同性质,对文本文件来说,可按字符读 ...

  3. python怎么读write_Python如何读写文件?python写入文件读写操作详解

    Python文件的打开或创建可以使用函数open().该函数可以指定处理模式,设置打开的文件为只读.只写或可读写状态.open()的声明如下所示. open(file, mode='r', buffe ...

  4. Python基础必掌握的文件读写操作详解

    读取和写入文件等操作是 Python 可以完成的最常见任务之一.无论是写入简单的文本文件,读取复杂的服务器日志,甚至分析原始字节数据,进行相关的处理操作,最终所有这些情况都需要读取或写入文件. 整套学 ...

  5. IOS 文件读写操作详解及简单实例

    iPhone 文件读写操作 1,写文件操作 - (IBAction)btnWrite:(id)sender {//创建文件管理器NSFileManager *fileManager = [NSFile ...

  6. linux系统如何创建python文件_Linux搭建python环境详解

    一.下载文件 版本:setuptools-0.6c11 版本:pip-1.5.6.tar.gz 版本:pymongo-2.7.2.tar.gz 版本:xlrd-0.9.3.tar.gz 版本:xlwt ...

  7. 华为荣耀3c语言设置在哪个文件夹,(科普)详解Android系统SD卡各类文件夹名称...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 系统数据类--系统文件存储相关文件夹 1..android_secure:官方app2sd的产物,存储了相关的软件使用认证验证,删除之后SD卡中的软件将无 ...

  8. JSON文件读写操作详解

    目录 JSON介绍 JSON基本语法 数据 对象 数组 JSON文件写入 JSON文件读取 JSON介绍 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量 ...

  9. python——xlsx文件的读写操作详解

    本文对xlsx文件的读写使用以下的库,已安装的可以忽略: """ 需安装的库文件: pip install xlrd==1.2.0 pip install pywin32 ...

最新文章

  1. grep与正则表达式
  2. [AaronYang]那天有个小孩跟我说Js-NodeJS[AY0]-EJS
  3. html菜单栏点击后处于选中状态,js实现导航菜单点击切换选中时高亮状态
  4. HashTable 和HashMap区别
  5. LIS最长上升子序列
  6. Linux卸载Mysql
  7. dnslog-server的概念
  8. ios上input框上边有阴影
  9. [原创] Jenkins slave agent 分布式构建
  10. linux中vim中文显示乱码
  11. 2012-08-20 → 2012-08-26 周总结
  12. 扫码枪回车键条码_收银系统中扫描枪扫描条码后必须按回车键才能查询商品的解决办法...
  13. 阿里云服务器Centos 6.8 64位漏洞 CVE-2017-5336 处理
  14. 构建虚拟Web主机——基于IP地址的虚拟主机
  15. oracle asm omf,Oracle Managed Files,OMF
  16. python 免费空间_用python做大数据
  17. python-selenium学习笔记:运用验证码过滤登陆,验证是否登陆成功
  18. iOS 通讯录-获取联系人属性
  19. 最新博客地址转移https://bravoing.github.io/
  20. 性能优化--JS、CSS压缩合并

热门文章

  1. NOI2004 郁闷的出纳员
  2. 信息抽取在知识图谱构建中的实践与应用
  3. 猎豹wifi有linux,电脑无线网卡过旧无法安装猎豹免费wifi的解决方法
  4. Apache Geode 1.4 快速搭建示例
  5. 【思维导图】冒险岛职业分类(按职业系、职业群分类)
  6. 【2021】Linux版搜狗输入法关闭繁简切换
  7. 计算机配置及性能测试,硬件配置及性能测试_联想笔记本电脑_笔记本评测-中关村在线...
  8. CCIE北京考场付款与开Case说明
  9. 取模是什么意思python_Python中的取模运算
  10. excel 连接sql server失败