北京丰台和平医院:C++中的文件输入/输出(1):你的第一个程序

来源:百度文库 编辑:方圆模具 时间:2020/03/30 17:37:46
C++中的文件输入/输出(1):你的第一个程序

C++中的文件输入/输出(1)

原作:Ilia Yordanov,  loobian@cpp-home.com

 

简介

本教程将以C++最基本的文件I/O(输出/输出)开始。此后,我将从更深入的方面,为你展示一些技巧,并分析给出一些有用的函数。

你需要对C++有一个较好的理解,否则这个教程于你而言将是陌生而毫无用处。

 

你的第一个程序

 

首先我将给出一段代码,接着再逐行进行解释。我们的第一个程序将建立一个文件,并写入一些字符:

 

#include

 

void main() // 程序从这里开始运行
{

ofstream SaveFile(“cpp-home.txt”);

SaveFile << “Hello World, from www.cpp-home.com and Loobian!”;

SaveFile.close();
}

仅仅如此吗?没错!这个程序将在当前运行目录下建立一个名为cpp-home.txt的文件,并向它写入“Hello World, from www.cpp-home.com and Loobian!”。

 

下面给出各行的含义:

 

#include —— 你需要包含此文件以使用C++的文件输入/输出函数。注意:一旦包含了这个文件,你不再需要(为了使用cout/cin)包含iostream.h,因为fstream.h已经自动包含了它。

在这个头文件中声明了若干个类,包括ifstream,ofstream及fstream,它们都继承自istream和ostream类。

 

ofstream SaveFile(“cpp-home.txt”);

1)ofstream“output file stream(输出文件流)。它将建立一个句柄(handle),以便我们以后能以一个文件流的形式写入文件。

2)SaveFile —— 这是文件句柄的名字,当然,你还可以换用任何一个你想要的名称。

3)(“cpp-home.txt”); —— 打开名为cpp-home.txt的文件。如果程序运行的当前目录已经存在这样一个文件,则它将被替换掉;万一不存在,程序也会为你创建一个为文件,你不必为此而担心。

现在,让我们稍微深入一点点。首先,我要指出的是:ofstream是一个类。因此ofstream SaveFile(“cpp-home.txt”);这一语句将创建一个该类的对象;而我们在括号中所传递的参数实际上将传给构造函数:在这里我们将我们要建立的文件的名称作为实际参数传递给了该类的构造函数。当然,我们还可以传递其它的一些信息,不过我以后再对其进行讲解。

 

SaveFile << “Hello World, from www.cpp-home.com and Loobian!”; —— “<<”看起来是不是很亲切?不错,想必你已经在cout << 中见到过。这是一个预定义好的运算符。不管怎么说,这行语句所做的,是将上面的那段文本写入文件。正如前面所提到的,SaveFile是一个文件句柄,它关联一个打开的流式文件。所以,我们只须输入句柄名,再跟着输入“<<”,然后接着写下一串用引号括起来的文本,就可以实现对文件的写入。如果我们想写入的是某个变量的值而不是带引号的文本,也只须像通常使用cout << 一样将变量传递给句柄对象,像这样:

SaveFile << variablename;

就可以了!

 

SaveFile.close(); —— 既然我们打开了一个流文件,那么当我们用完它之后,就必须关闭它。SaveFileofstream类的一个对象,而该类(ofstream)有一个用于关闭文件的成员函数,即close() 函数。因此,我们只要依次输入文件句柄名,点号和close(),就可以关闭该文件!

注意:一旦你关闭文件,在你重新打开它以前,就再不能对它进行访问。

 

以上就是一个可以写文件的最简单程序。的确很容易!不过,正如你即将在以后部分的教程中所看到的,还有更多的东西要学呢!



本文引用通告地址: http://blog.csdn.net/Kusk/services/trackbacks/7377.aspx
c语言中的输出和输入 VC++中的输入与输出 “与非”门中的某一个输入值为“0”,那么它的输出值() "文件损坏或输入或输出的介质损坏 C语言 输入一个整数,如何输出它的逆续数,比如12345,要求输出54321 用c语言编辑两个文本文件的内容进行比较,要求输出相同的单词以及在文件中的位置 C语言中的倒序输出 CMCC中的第一个C的含义 输入10个数并输出。要求输出时第一个数是最大的,最后一个数是最小的 C语言中个能输入或输出汉字? C语言编程:输入字符串,倒序输出 怎样用C实现 输入N,输出1到N这N个自然数的全排列呢? c语言:输入:x和一个10进制数,输出:该数的x进制(除留余法) c程序 输入一个正整数,将它分解为质因数的乘积的形式输出,(例如输入:90 ,打印:90=2*3*3*5 ) ( C 编程)输出10000!的结果。 c输出的问题 编写一个程序输入一个整数,将其逆序输出,输出格式为整数(用C语言) c语言当执行下面的程序时,如果输入ABC,则输出的结果是:ABC6789 请给出:输入N个数,然后按递增序输出的C语言的源程序 怎么用c 语言编程,输入x 的直,输出y =x +2? C语言写出 ,输入4个整数,要求按由大到小的顺序输出? C语言编写程序:输入4个互不相等的实型数,输出其中最大一个. 从键盘上输入a,b,c三个整数,输出其中最大的和最小者 C语言编写程序:输入4个整数输出其中最小值的程序