fstream.h是啥意思?又啥作用啊?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fstream.h是啥意思?又啥作用啊?相关的知识,希望对你有一定的参考价值。
这是C++里的文件。fstream.h是头文件,是对文件操作使用的。 继承 iostream; fstream 拥有iostream功能,但并不是包含关系。 fstream 是对文件操作,而 iostream 是 对 标准输入输出文件的操作。
在C++中,对文件的操作是通过stream的子类fstream(file stream)来实现的,所以,要用这种方式操作文件,就必须加入头文件fstream.h。使用方法如下:
在fstream类中,有一个成员函数open(),就是用来打开文件的,其原型是:
void open(const char* filename,int mode,int access);
参数:
filename: 要打开的文件名
mode: 要打开文件的方式
access: 打开文件的属性
打开文件的方式在类ios(是所有流式I/O类的基类)中定义,常用的值如下:
ios::app: 以追加的方式打开文件
ios::ate: 文件打开后定位到文件尾,ios:app就包含有此属性
ios::binary: 以二进制方式打开文件,缺省的方式是文本方式。两种方式的区别见前文
ios::in: 文件以输入方式打开
ios::out: 文件以输出方式打开
ios::nocreate: 不建立文件,所以文件不存在时打开失败
ios::noreplace:不覆盖文件,所以打开文件时如果文件存在失败
ios::trunc: 如果文件存在,把文件长度设为0
可以用“或”把以上属性连接起来,如ios::out|ios::binary
打开文件的属性取值是:
0:普通文件,打开访问
1:只读文件
2:隐含文件
4:系统文件
可以用“或”或者“+”把以上属性连接起来 ,如3或1|2就是以只读和隐含属性打开文件。
例如:以二进制输入方式打开文件c:config.sys
fstream file1;
file1.open("c:\\config.sys",ios::binary|ios::in,0);
如果open函数只有文件名一个参数,则是以读/写普通文件打开,即:
file1.open("c:\\config.sys");<=>file1.open("c:\\config.sys",ios::in|ios::out,0);
另外,fstream还有和open()一样的构造函数,对于上例,在定义的时侯就可以打开文件了:
fstream file1("c:\\config.sys");
特别提出的是,fstream有两个子类:ifstream(input file stream)和ofstream(outpu file stream),ifstream默认以输入方式打开文件,而ofstream默认以输出方式打开文件。
ifstream file2("c:\\pdos.def");//以输入方式打开文件
ofstream file3("c:\\x.123");//以输出方式打开文件
所以,在实际应用中,根据需要的不同,选择不同的类来定义:如果想以输入方式打开,就用ifstream来定义;如果想以输出方式打开,就用ofstream来定义;如果想以输入/输出方式来打开,就用fstream来定义。 参考技术A 它是c++里面文件输入输出流,有这个#include<fstream.h>头文件就可以用很多有关文件输入输出的函数如:fopen,fclose,fputs,fgets,fread等等!!! 参考技术B 这个是输入输出流的头文件。我举个例子吧
char s[20];
//打开文件:
fstream tfile(“data.txt”,ios::in|ios::out);
//读文件:
tfile>>s;
tfile.get(s[0]);
tfile.getline(s,20);
//写文件:
tfile<<s;
tfile.put(s[0]);
//关闭文件:
tfile.close();本回答被提问者和网友采纳
以上是关于fstream.h是啥意思?又啥作用啊?的主要内容,如果未能解决你的问题,请参考以下文章
android,,onActivityResult的作用是啥啊,requestCode, resultCode是啥意思啊?
DataAdapter 是啥意思啊 应该怎样用啊???有啥作用啊???
C语言中的“class”是啥意思啊?讲下其作用及用法。麻烦了