博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++文件读写操作
阅读量:6766 次
发布时间:2019-06-26

本文共 1231 字,大约阅读时间需要 4 分钟。

hot3.png

C++文件流

fstream  // 文件流ifstream  // 输入文件流ofstream  // 输出文件流

文件打开方式选项:

ios::in        //供读,文件不存在则创建(ifstream默认的打开方式)ios::out       //供写,文件不存在则创建,若文件已存在则清空原内容(ofstream默认的打开方式)ios::ate       //文件打开时,指针在文件最后。可改变指针的位置,常和in、out联合使用ios::app       //供写,文件不存在则创建,若文件已存在则在原文件内容后写入新的内容,指针位置总在最后ios::trunc     //在读写前先将文件长度截断为0(默认)ios::nocreate //文件不存在时产生错误,常和in或app联合使用ios::noreplace //文件存在时产生错误,常和out联合使用ios::binary   //二进制格式文件文件保护方式选择项:filebuf::openprot;     //默认的兼容共享方式filebuf::sh_none;    //独占,不共享filebuf::sh_read;    //读共享filebuf::sh_write;   //写共享打开文件的方法调用构造函数时指定文件名和打开模式fstream f("d:\\12.dat",ios::in|ios::out|ios::binary); //以读写方式打开二进制文件使用Open成员函数fstream f;f.open("d:\\12.txt",ios::out); //利用同一对象对多个文件进行操作时要用到open函数检查是否成功打开成功:    if(f){...}   //对ifstream、ofstream对象可用,fstream对象不可用。    if(f.good()){...}失败:    if(!f){...}   // !运算符已经重载    if(f.fail()){...}

文件定位

通过移动文件读写指针,可在文件指定位置进行读写。  seekg(绝对位置);      //绝对移动,输入流操作  seekg(相对位置,参照位置);  //相对操作  tellg();          //返回当前指针位置  seekp(绝对位置);      //绝对移动,输出流操作  seekp(相对位置,参照位置);  //相对操作     tellp();          //返回当前指针位置  参照位置:  ios::beg  = 0       //相对于文件头  ios::cur  = 1       //相对于当前位置  ios::end  = 2       //相对于文件尾

显示文件内容

文件拷贝

continued……

转载于:https://my.oschina.net/u/231848/blog/278024

你可能感兴趣的文章