C++备课讲义第15节.ppt
文本预览下载声明
* 第15章 输入输出流 编译系统已经以运算符或函数的形式做好了对标准外设(键盘、屏幕、打印机、文件)的接口,使用时只需按照要求的格式调用即可。 cinx; coutx; cin.get(ch); 内存 键盘 文件 光笔.... 输入流 显示器 文件 打印机... 输出流 输入输出流(I/O Stream) C++语言的I/O系统向用户提供一个统一的接口,使得程序的设计尽量与所访问的具体设备无关,在用户与设备之间提供了一个抽象的界面:输入输出流。 ios istream(输入流) ostream(输出流) iostream 在“iostream.h”中说明 cin, cout是标准输入输出流类的对象,系统已经在iostream.h中定义。 用标准流进行输入/输出时,系统自动地完成数据类型的转换。对于输入流,要将输入的字符序列形式的数据变换成计算机内部形式的数据(二进制或ASCII)后,再赋给变量,变换后的格式由变量的类型确定。对于输出流,将要输出的数据变换成字符串形式后,送到输出流(文件)中。 内存 键盘 文件 光笔.... 输入流 显示器 文件 打印机... 输出流 编译系统已经以运算符或函数的形式做好了对标准外设(键盘、屏幕、打印机、文件)的接口,使用时只需按照要求的格式调用即可。 cinx; coutx; cin.get(ch); 文件流 C++在头文件fstream.h中定义了C++的文件流类体系 ,当程序中使用文件时,要包含头文件fstream.h 。 ios ifstream(输入流) ofstream(输出流) fstream 在“fstream.h”中说明 当使用文件时,在程序头有:#includefstream.h 其中定义了各种文件操作运算符及函数。 内存变量 (程序) 键盘 输入文件 屏幕 输出文件 cinx coutx infilex outfilex 程序对文本文件的操作与对键盘、显示器的操作比较: 在涉及文本文件的操作时,将输入文件看成键盘,将输出文件看成显示器,格式不变。只需在程序中增加打开与关闭文件的语句。 cin, cout是标准输入输出流类的对象,系统已经在iostream.h中定义。 文件的操作 文件 文本文件: 以ASCII表示的文件:记事本,*.cpp等 二进制文件: 用二进制形式表示的文件:可执行程序*.EXE等 56:ASCII表示为00110110,占两字节 56:二进制表示为 111000,占六个二进制位 不同的文件操作的函数、格式不同 文本文件的打开与关闭 在文件操作前,需要将程序与被操作的文件联系起来,使程序可以“引用”文件。 在程序内定义一个文件类的对象,由该对象与文件发生联系,程序内所有的与文件的操作都是对该对象的操作。 fstream infile , outfile; ifstream infile; ofstream outfile; 两个对象,可以联系两个输入输出文件 对象只能联系输入文件 对象只能联系输出文件 ios ifstream(输入流) ofstream(输出流) fstream 在“fstream.h”中说明 定义用于输入的文件对象 定义用于输出的文件对象 定义用于输入输出的文件对象 如何使文件类的对象与欲操作的文件发生联系? 用对象打开文件: ifstream infile; //定义输入文件类对象 infile.open(“myfile1.txt”);//利用函数打开某一文件 打开文件的作用是,使文件流对象与要使用的文件名之间建立联系。 ofstream outfile; //定义输出文件类对象 outfile.open(“myfile1.txt”);//打开某一文件供输出 infile.open(“myfile1.txt”); 打开文件“myfile1.txt”用于输入,并将这个文件与输入文件类对象infile建立联系,今后,在程序中,用到这个文件“myfile1.txt”的地方就用infile来代替。 outfile.open(“myfile2.txt”); 打开文件“myfile2.txt”用于输出,并将这个文件与输出文件类对象outfile建立联系,今后,在程序中,用到这个文件“myfile2.txt”的地方就用outfile来代替。 ifstream infile (“myfile1.txt”); //定义输入文件类对象 //利用构造函数打开某一文件 ofstream outfile(“myfile1.txt”); //定义输出文件类对象 //利用构造函数打开某一文件供输出 如何从文件中输入输出数据? 将文件类对象看成键盘和显示器即可。 ifstream infile
显示全部