如果文件的每一个字节中均以ASCII代码形式存放数据,即一个字节存放一个字符,这个文件就是ASCII文件(或称字符文件)。程序可以从ASCII文件中读入若干个字符,也可以向它输出一些字符。

对ASCII文件的读写操作可以用以下两种方法:

1) 用流插入运算符“<>”输入输出标准类型的数据。“<>”都巳在iostream中被重载为能用于ostream和istream类对象的标准类型的输入输出。由于ifstream和ofstream分别是ostream和istream类的派生类(详情请见:与C++输入输出有关的类和对象),因此它们从ostream和istream类继承了公用的重载函数,所以在对磁盘文件的操作中,可以通过文件流对象和流插入运算符“<>”实现对磁盘 文件的读写,如同用cin、cout和<>对标准设备进行读写一样。

2) 用文件流的put、get、geiline等成员函数进行字符的输入输出,前面已介绍,请查看:用C++流成员函数put输出单个字符、C++ get()函数读入一个字符和C++ getline()函数读入一行字符。

[例13.11] 有一个整型数组,含个元素,从键盘输入个整数给数组,将此数组送到磁盘文件中存放。

#include

using namespace std;

int main( )

{

int a[10];

ofstream outfile("f1.dat",ios::out);//定义文件流对象,打开磁盘文件"f1.dat"

if(!outfile) //如果打开失败,outfile返回值

{

cerr<

exit(1);

}

cout<

for(int i=0;i<10;i++)

{

cin>>a[i];

outfile<

} //向磁盘文件"f1.dat"输出数据

outfile.close(); //关闭磁盘文件"f1.dat"

return 0;

}

运行情况如下:

enter 10 integer numbers:

1 3 5 2 4 6 10 8 7 9 ↙

对程序的几点说明:

1) 程序中用#indude命令包含了头文件fstream,这是由于在程序中用到文件流类 ofstream,而ofstream是在头文件fstream中定义的。有人可能会提出:程序中用到cout, 为什么没有包含iostream头文件?这是由于在头文件fstream中包含了头文件iostream, 因此,包含了头文件fstream就意味着已经包含了头文件iostream,不必重复(当然,多写 一行#include 也不出错)。

2) 参数 ios::out 可以省写。 如不写此项,则默认为ios::out。下面两种写法等价:

ofstream outfile("f1.dat", ios::out);

ofstream outfile("f1.dat");

(3) 系统函数exit用来结束程序运行。exit的参数为任意整数,可用0,1或其他整数。由于用了exit函数,某些老版本的C ++要求包含头文件stdlib.h,而在新版本的C++(如 GCC)则不要求此包含。

4) 在程序中用“cin>>”从键盘逐个读入10个整数,每读入一个就将该数向磁盘文件输出,输出的语句为:

outfile<

c语言读取ascii文件,C++对ASCII文件的读写操作相关推荐

  1. python创建txt文件并写入 编码-Python文本文件读写操作时的字符编码问题

    说明1:文本文件的字符编码问题只存在t模式中,如:open('a.txt', mode='rt') 编码(encode): 我们输入的任何字符想要以文件(如.txt)的形式保存在计算机的硬盘上, 必须 ...

  2. c语言读取exe的pe标记,PE文件信息读取程序(1.关键函数部分)

    #include "stdafx.h" #include "PEFuncs.h" #include //需要引入如下.lib文件 //#pragma comme ...

  3. java word 读取excel数据_在Java中实现读写操作Word、Excel等文件

    Jakarta的POI项目提供了一组操纵Windows文档的Java API,如下几个类提供了操作Excel文件的方便的途径:HSSFWorkbook.HSSFSheet.HSSFRow.HSSFCe ...

  4. Linux学习之路4——文件IO打开、创建、读写操作

    1.使用man 2 open.man 2 creat.man 2 write.man 2 read命令获取头文件 语法: int open(const char *pathname, int flag ...

  5. 使用C语言读取properties文件V1.0

    本程序使用C语言读取类似以下格式的properties文件. path = /etc/wgetrc launch_on_start = true 下一版目标: (1)使用指针代替二维数据或者二维数据的 ...

  6. Python3之文件的读、写、修改操作

    文件yesterday Somehow, it seems the love I knew was always the most destructive kind 不知为何,我经历的爱情总是最具毁灭 ...

  7. Java文件读写操作(c站最全!一篇就够了)

    写在前面   你们好,我是小庄.很高兴能和你们一起学习Java.如果您对Java感兴趣的话可关注我的动态.   写博文是一种习惯,在这过程中能够梳理和巩固知识. Java文件读写操作 一.File类 ...

  8. MATLAB读取txt,excel,ASCII文件

    MATLAB读取txt,excel,ASCII文件 1. 读取方式 textread(字母和数值每行格式一致) xlsread(读取excel文件) importdata(字母和数值分开,以数字为主, ...

  9. stl格式说明和stl文件生成(ascII,binary),vs2005,文件生成后imageware读取成功

    转自:http://blog.csdn.net/scudz/article/details/7758141 1引言 STL(Stereo lithographic)文件格式是美国3D SYSTEMS公 ...

最新文章

  1. db2v9/9.5高级应用开发_Spark v2.4.3应用程序开发入门-基于IDEA/Maven 构建简单应用
  2. php安装libpng,php安装
  3. 知识图谱理论与实践(以问答系统为例)
  4. ubuntu nginx配置负载均衡篇(二)
  5. Sybase数据库应用系统调优的五大领域
  6. C++ delete删除动态分配的内存
  7. LuoguP4233 射命丸文的笔记
  8. Node.js:npm下载很慢,设置国内淘宝镜像
  9. Httpd总结 :HTTPD的基本概念
  10. 毕设题目:Matlab语音识别
  11. Crystal Reports基础知识
  12. oracle修改默认值语句,Oracle 常用的修改语句
  13. 浅谈《分布式光伏发电系统电气安全技术规范》
  14. 织梦采集_dede采集_dede自动采集
  15. 【数据维护】Windows文件保护机制(SFC)
  16. 快速学习JasperReport-模板工具Jaspersoft Studio
  17. 芝加哥打字机_芝加哥打字机不是打字机
  18. 加密聊天软件(技术文档)
  19. HTML5期末大作业:在线电影网站设计——电影速递网(12页面)含登录注册HTML+CSS+JavaScript
  20. Linux内核源码高速下载地址

热门文章

  1. 测试发文章测试发文章
  2. Java执行引擎工作原理:方法调用
  3. 视频字幕添加软件有哪些?这有视频字幕添加的软件
  4. 鸿蒙系统(HarmonyOS)应用开发入门篇
  5. 鸿蒙OS应用(HarmonyOS Application)开发常见示例源码
  6. 酷睿i5 1155g7相当于什么水平 i51155g7属于哪个档次
  7. 量化投资学习——关于XTP交易柜台
  8. Luat模块应用手册-示例-Luat DEMO-长连接超低功耗方案
  9. 基于matlab的通信系统仿真的本科论文,基于MATLAB的TDM通信系统仿真设计.docx
  10. 规划云:GIS相关模块