• c++入门之文件读取


    再次强调这个观念:写文件,读文件和读,写控制台本质上没有区别,意识到这一点是十分重要的。下面给出读文件的代码:

     1 #include "iostream"
     2 # include "fstream"
     3 # include "cstdlib"
     4 const int SIZE{ 60 };
     5 int main()
     6 {
     7     using namespace std;
     8     char filename[SIZE];
     9     ifstream Infile;//定义一个输入流对象,等效于cin
    10     cout << "Enter name of data file:";
    11     cin.getline(filename, SIZE);//从输入流中截取最大SIZE个字符的字符串作为文件名,遇到换行符
    也会终止
    12     Infile.open(filename);//打开文件
    13     if (!Infile.is_open())//文件打开成功返回1
    14     {
    15         cout << "could not fine the file:" << filename << endl;
    16         exit(EXIT_FAILURE);//打开失败退出系统
    17     }
    18 
    19     double value;
    20     double sum{ 0.0 };
    21     int count{ 0 };
    22 
    23     Infile >> value;//注意Infile 相当于cin
    24     while (Infile.good())
    25     {
    26         ++count;
    27         sum += value;
    28         Infile >> value;
    29     }
    30     if (Infile.eof())//eof判断是否读到文件末尾,读到末尾返回值为1.
    31         cout << "End of file readed.
    ";
    32     else if (Infile.fail())
    33     cout << "missing match" << endl;
    34     else
    35         cout << "input for unknowm" << endl;
    36     if (count == 0)
    37         cout << "No data" << endl;
    38     else
    39     {
    40         cout << "sum is:" << sum << endl;
    41         cout << "average is:" << sum / count << endl;
    42     }
    43     Infile.close();
    44         system("pause");
    45         return 0;
    46 }

    注意点:

    对于读文件中出现的.getline()方法,和.oef()方法,暂时不再赘述

    需要强调的是,理解23_29行的代码,尤其是23行的代码。理解:Infile >> value;首先应该认识到:Infile关联了一个文件,其实我们应该认识到:文件流和控制台输入流并没有一个本质的区别.因此,当我们看到Infile的时候,我们可以完全认为这是个cin>>value,而我们是知道cin>>value表达的是从控制条输入流中取一个类型的数据赋值给value。因此,这样一来,我们就可以完全理解Infile>>value表达的含义,从文件流中获取一个value对应类型的数据送给value。

  • 相关阅读:
    android 2.3 bug android 4.x bug
    设计高性能CSS3动画的几个要素
    开启硬件加速 解决页面闪白 保证动画流畅
    取消input在ios下,输入的时候英文首字母的默认大写 android 上去掉语音输入按钮
    JS中的类型检测
    CSS的一点知识
    HTML Canvas
    HTML DOM Table 对象
    只是有所了解的语言
    骑士巡游问题
  • 原文地址:https://www.cnblogs.com/shaonianpi/p/9783863.html
Copyright © 2020-2023  润新知