读写文件

知识点

  • ofstream和ifstream是由头文件定义的2个类,分别负责输入和输出

  • fin总是从文件开始部分读取,为了读取第二行,使用了“ fin.ignore(256,'\n'); ”

  • 为了将数据写入文件,需要创建一个输出文件流ofstream的对象fout,通过构造函数来打开一个文件,将文件与fout对象连接,然后通过<<将数据插入fout对象,实现数据和文件关联的目的。

     #include "stdafx.h"
     #include
    //引入输入输出文件流对象的头文件
     #include
    
     using namespace std;
       //主函数
      int _tmain(int argc, _TCHAR* argv[])
    {
    //定义变量,保存程序中的数据
     int nYear, nMonth, nDate;
     //尝试打开Date.txt文件,并将其连接到输入文件流fin
     ifstream fin("Date.txt");
      //如果成功打开Date.txt文件,则从文件中读取内容
    if (!fin.bad())
      {
     //忽略文件中第一行的提示信息
     fin.ignore(256, '\n');
     //用提示符“>>"从文件输入流fin中读取记录的数据,并保存到相应的变量
     fin >> nYear >> nMonth >> nDate;
         //将数据显示到屏幕
         cout << "文件中的日期是" << nYear << "-" << nMonth << "-" << nDate << endl;
     //读取完成后,关闭文件
     fin.close();
    }
    else
    {
     //如果文件打开失败,则提示错误信息
     cout << "无法打开文件并进行读取" << endl;
      }
    
       //提示用户输入新的数据并将其写入文件
         cout << "请输入当前日期(年月日):" << endl;
        //从用户屏幕获取用户的键盘输入并保存到相应的变量中
          cin >> nYear >> nMonth >> nDate;
    
         //尝试打开文件Date.txt,并将其连接到输出文件流fout中
           ofstream fout("Date.txt");
              //如果成功打开Date.txt文件,则将用户输入的数据写入文件
             if (!fout.bad())
             {
     //利用插入符”<<“将数据写入文件输出流fout中
     //也就是将数据写入文件
     fout << "用户当前的日期是:\n" << nYear << "" << nMonth << "" << nDate;
     //写入完成后,关闭文件
     fout.close();
      }
     else
      {
     //如果无法打开文件。则提示用户信息
     cout << "无法打开文件并进行写入" << endl;
      }
    
     return 0;
      }
    

代码运行情况如下


image.png

你可能感兴趣的:(读写文件)