076day(文件读写和题目练习)
来源:互联网 发布:自动刷弹幕软件 编辑:程序博客网 时间:2024/06/05 14:49
172210704111-陈国佳总结《2017年12月26日》【连续076天】
标题:文件读写和题目练习;
内容:A.练习了一道PAT题,一开始超时了,优化后,又发生了段错误,明天再优化;
B.文件读写:
#include<fstream>
ofstream outFile("clients.dat",ios::out|ios::binary);
-clients.dat 创建文件名
-ios::out 文件打开方式(ios::out)输出到文件,删除原有内容;(ios::app)保留原有内容,在尾部添加;
-ios::binary 以二进制格式打开文件;
1.创建文件:
先创建ofstream对象,在open函数打开:
ofstream fout; fout.open("test.out",ios::out|ios::binary);
判断打开是否成功:
if(!fout){cout<<"File open error!"<<endl;}
文件名可以给出绝对路径,也可以给相对路径;没交代,就是在当前文件夹下找文件;
2.文件的读写指针:
对于输入输出文件,有一个读写指针;
ifstream fin("a1.in',ios::ate);
long location=fin.tellg(); //取得指针位置;
fin.seekg(location,/ios::beg/ios::cur/ios::end); 将指针读到第l个字节处//从头数location//从当前位置数L//从尾部数L;
L可为负值;
显示关闭文件:
ifstream fin("test.dat",ios::in);
fin.close();
ofstream fout("test.dat",ios::out);
fout.close();
#include<iostream>#include<fstream>#include<vector>#include<algorithm>using namespace std;int main(){ vector<int> v; ifstream srcFile("in.txt",ios::in); ofstream destFile("out.txt",ios::out); int x; while(srcFile>>x) v.push_back(x); sort(v.begin(),v.end()); for(int i=0;i<v.size();i++) destFile<<v[i]<<" "; destFile.close(); srcFile.close(); return 0;}in.txt:1 234 9 45 6 879
运行后,出现out.txt:1 6 9 45 234 879
明日计划:复习;