c++文件操作

来源:互联网 发布:android 网络配置文件 编辑:程序博客网 时间:2024/06/05 07:14
c++文件操作    string s;  输入即读取;输出即写入

1、头文件支持fstream
2、三种文件类。ifstream 输入文件流;ofstream输出文件流;fstream输入输出文件流,既可以输入又可以输出;
3、fstream file1("C:/Users/gvfjy/Desktop/001.txt")//文件流对象(file1)与文件建立关联的方式。
   只有建立关联后才能访问和修改文件的数据。
   一般用fstream建立联系;这样即可以读又可以写,而且不会清除文件原来的数据。不过仅限于文件存在的情况下,这重方式不会新建文件;
   用ofstream时如果文件存在,则会清空文件内容。如果不存在则会新建文件,这是该类的作用。ifstream一般不怎么用。
4、路径的表示 fstream file1("C:/Users/gvfjy/Desktop/001.txt")
   ()里面的参数时字符串,所以可以用字符串代替;
    比如 char road[30]="C:/Users/gvfjy/Desktop/001.txt";可以用fstream file1(road);建立文件关联。
5、建立关联后文件指针的默认位置
   fstream file1(road);输出流指针位于文本开始位置。当向文本添加数据时,会覆盖原来的数据,而不是将原来的数据位置向后推。
   输入流位置也位于文本开始。两个指针的位置互不影响。
6、file1<<"printf txt"<<endl;getline(file1,s,'\n');//写文件方式,和cout的方式一样。file1与cout是同一个类型的东西,输出流。输入同cin一样
7、文件指针定位  ios::beg   文件头;ios::end   文件尾;ios::cur   当前位置
   seekg()函数。输入流文件指针定位函数;
   file1.seekg(0,ios::beg);表示将文件指针定位到文本开头。0表示移动的位置,数字为负数时向前移动,为正数时向后移动。
   seekp()函数。输出流文件指针定位函数。用法和seekg()相同。
   一个汉字占据两个字节
8、getline()函数读取方式
   getline(file1,s,'|');s是一个string字符串,后面的参数表述遇到该字符时停止读取,文件指针此时到达‘|’后面的位置。不加后面的参数时默认读取到‘\n’;
   char str[109];file1.getline(str,100);//str为char型字符串,限定最大读取长度为100。实际读到str的为99个(n-1);
   不管哪种方式读取到‘\n’都会停止。
9、文件结束的判断
     f1.eof()。当文件指针到达末尾时,函数返回值变为false;

原创粉丝点击