C++文件练习

本文介绍了两个使用C++进行文件读写的示例程序。第一个程序展示了如何读取整数并找出最大值;第二个程序则演示了如何写入和读取字符串数据,包括计数和记录电子邮件地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)

‍//读入文件中的数,将其输出,并且找出最大的,再写入到文件中去

#include<iostream>
#include<fstream>
#include<string>
using namespace std;

int main()
{
    fstream file;
int x=0,max=0;
file.open("c:\\a.txt",ios::in|ios::out); //以读写方式打开文件,默认也是这种方法
if(file.fail())
{
   cout<<"file open fail!"<<endl;
}
    else{
     cout<<"the file informantion is :";


   while(file>>x)
   {
    cout<<x<<" ";
    if(x>max) max=x;

   }
   /*好像没有效果
   cout<<endl;
   cout<<file.tellp()<<endl;
   file.seekg(ios_base::beg); //重新定位到文件开头
    if(file.eof())
    {
     cout<<"file is end!"<<endl;
    }
    */
   cout<<endl;
   cout<<"the file max is: "<<max<<endl;
}
   
    

    file.close();

return 0;
}

(2)

#include<iostream>
#include<fstream>
#include<string>
using namespace std;

int main()
{
    fstream file;
ifstream ifile;
int count=0,icount=0;
string str,istr;
file.open("c:\\a.txt",ios::in|ios::out); //以读写方式打开文件,默认也是这种方法
if(file.fail())
{
   cout<<"file open fail!"<<endl;
}
    else{
   file.write((char *)&count,sizeof(int));
   cout<<"-- 请输入收件人邮箱 --"<<endl;
   while(cin>>str&& str!="-1")
   {
    file<<str<<' ';
    count++;
   }

   long pos=file.tellp();
   file.seekp(ios_base::beg);
   file.write((char *)&count,sizeof(int));
   file.seekp(pos);


        cout<<"--- 请输入发件人邮箱 ----"<<endl;
     if(cin>>str)
   {
    file<<str;
   }

  
}
    file.close();


ifile.open("c:\\a.txt");
if(ifile.fail())
{
   cout<<"file open fail!"<<endl;
}
    else{
  
ifile.read((char *)&icount,sizeof(int));
cout<<"-- 收件人邮箱 --"<<endl;
for(int i=0;i<icount;i++)
{
   ifile>>istr;
   cout<<istr<<endl;
}
cout<<"--- 发件人邮箱 ----"<<endl;

     ifile>>istr;
   cout<<istr<<endl;
  
}
    ifile.close();

return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值