7. 输入输出和文件操作.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
文件的读写指针 ofstream fout(“a1.out”,ios::app); long location = fout.tellp(); //取得写指针的位置 location = 10L; fout.seekp(location); // 将写指针移动到第10个字节处 fout.seekp(location,ios::beg); //从头数location fout.seekp(location,ios::cur); //从当前位置数location fout.seekp(location,ios::end); //从尾部数location location 可以为负值 文件的读写指针 ifstream fin(a1.in,ios::ate); long location = fin.tellg(); //取得读指针的位置 location = 10L; fin.seekg(location); // 将读指针移动到第10个字节处 fin.seekg(location,ios::beg); //从头数location fin.seekg(location,ios::cur); //从当前位置数location fin.seekg(location,ios::end); //从尾部数location location 可以为负值 字符文件读写 因为文件流也是流,所以前面讲过的流的成员函数和流操作算子也同样适用于文件流。 写一个程序,将文件 in.txt 里面的整数排序后,输出到out.txt 例如,若in.txt 的内容为: 1 234 9 45 6 879 则执行本程序后,生成的out.txt的内容为: 1 6 9 45 234 879 #include iostream #include fstream #include vector #include algorithm using namespace std; int main() { vectorint 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; } 二进制文件读写 int x=10; fout.seekp(20, ios::beg); fout.write( (const char *)(x), sizeof(int) ); fin.seekg(0, ios::beg); fin.read( (char *)(x), sizeof(int) ); 二进制文件读写,直接写二进制数据,记事本看未必正确。 二进制文件读写 //下面的程序从键盘输入几个学生的姓名的成绩,并以二进制 //文件形式存起来 #include iostream #include fstream using namespace std; class CStudent { public: char szName[20]; int nScore; }; int main() { CStudent s; ofstream OutFile( c:\\tmp\\students.dat, ios::out|ios::binary); while( cin s.szName s.nScore ) { if( stricmp(s.szName, exit ) == 0) //名字为exit则结束 break; OutFile.write( (char * ) s, sizeof( s) ); } OutFile.close(); return 0; } 输入: Tom 60 Jack 80 Jane 40 exit 0 则形成的 students.dat 为 72字节,用 记事本打开,呈现: Tom 烫烫烫烫烫烫烫烫 Jack 烫烫烫烫烫烫烫蘌 Jane 烫烫烫烫烫烫烫? 二进制文件读写 //下面的程序将 students.dat 文件的内容读出并显示 #include iostream #include fstream us

文档评论(0)

文人教参 + 关注
实名认证
内容提供者

老师教学,学生学习备考课程、成人语言培训课程及教材等为提升学生终身学习竞争力,塑造学生综合能力素质,赋能学生而努力

版权声明书
用户编号:6103150140000005

1亿VIP精品文档

相关文档