加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 系统 > 正文

C++进阶方法 C++逐行读取文件

发布时间:2022-01-17 20:59:07 所属栏目:系统 来源:互联网
导读:不管使用哪种操作系统,文件都是程序员、计算机用户和学生日常生活中非常重要的一部分。这些文件帮助我们以不同的格式保存数据,具有安全性和冗余性。因此,在今天这个简单的教程中,我们将讨论在Ubuntu 20.04系统中逐行读取文件数据的 C++ 示例。 让我们
  不管使用哪种操作系统,文件都是程序员、计算机用户和学生日常生活中非常重要的一部分。这些文件帮助我们以不同的格式保存数据,具有安全性和冗余性。因此,在今天这个简单的教程中,我们将讨论在Ubuntu 20.04系统中逐行读取文件数据的 C++ 示例。
 
  让我们先从 Ubuntu 20.04 系统中安装名为“g++”的 C++编译器开始,因为我们正在用 C++ 语言编写代码。为此,我们按Ctrl+alt+T调出终端。
 
  安装g++,输入如下命令
  linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt-get install g++
 
 
  用g++ --version查看g++版本。
 
  linuxmi@linuxmi:~/www.linuxmi.com$ g++ --version
 
 
  OK,安装了g++编译器后,我们现在就可以实现以下示例了。
 
  在我们的 Ubuntu 20.04 系统中创建了一个新的 c++ 文件。文件名为“linuxmi.com.cpp”。该文件可以在任何编辑器中打开以添加 c++ 代码。这些编辑器包括文本、vim 和 nano 编辑器。我们现在使用“vim”打开文件“linuxmi.com.cpp”。
 
  示例一
  空白文件将在 vim 编辑器中展开。我们已经通过包含一些重要且必要的头文件来开始我们的代码。头文件包括输入输出流、字符串和文件流头文件。代码将在没有命名空间的情况下启动。所以,我们首先启动了main()方法。在我们的第一个示例中,我们使用已经创建的文件逐行读取文本。“std”关键字将用于在代码中使用标准输入和输出。
 
  因此,输入文件流用于使用文件对象,即ReadF 从主目录中读取文件“www.linuxmi.com.txt”。字符串类型变量被声明为“data”,以便在读取后将文件的文本简单地保存到其中。现在,这里使用 while 循环来使用 C++ 的 getline() 函数。该函数有两个参数,即“ReadF”对象和字符串变量“data”。getline() 函数将从 www.linuxmi.com.txt 文件中读取文本并将其保存到变量“data”中,直到文件不为空。当这个条件成立时,我们使用“cout”语句在shell中显示文件数据。
 
 
  让我们使用“g++”编译器在终端中编译新实现的代码。之后,使用“./linuxmi.com.out”指令执行文件。输出在终端上逐行显示文件数据。
 
 
  示例二
  我们的第一个示例是关于逐行读取文件中的数据并显示在 shell 上。在这个例子中,我们将数据写入文件,然后逐行读取。因此,我们通过打开“linuxmi.com.cpp”文件更新了代码。添加了标题和命名空间。在main() 方法中,我们使用了输出文件流对象,即“WriteF”将数据写入www.linuxmi.com.txt 文件。用户已使用 WriteF 对象将数据添加到文件中。WriteF 对象在此处从用户那里获取单行输入。WriteF 对象将被关闭,并声明“data”。输入文件流对象,即ReadF,用于逐行读取www.linuxmi.com.txt文件中的文本。当文件不为空时,它将继续使用 getline 方法将文件对象 ReadF 中的数据保存在变量“data”中。cout 语句在 shell 上逐行显示数据。
 
  最后,ReadF输入文件流对象被关闭。程序到此结束。现在让我们执行它。
 
 
  首先,用g++编译器编译更新后的代码,然后执行。执行后,当用户在 www.linuxmi.com.txt 文件中写入一行代码时,我们还得到了一行输出。
 
  示例三
  因此,这是我们最后一个但同样重要的示例,逐行从文件中读取数据。现在,我们打开了相同的 linuxmi.com.cpp 文件并更新了它的代码,如下所示。因此,我们开始包含必要的头文件,即 iostream、string 和 fstream,用于文件处理。然后在 main 函数开始之前使用了一个命名空间。该脚本与上述两个示例代码略有不同。我们在 main() 函数的开头声明了头文件“fstream”的对象“File”。该对象将用于打开、写入、读取和关闭文件。首先,我们使用对象文件打开“www.linuxmi.com.txt”文件。标准“ios”包标识流类型,即输入或输出。
 
  您可以看到,我们已将其指定为输出流。“out”关键字将用于在打开文件后写入文件,而“in”关键字将用于从文件中读取。因此,我们利用“if”语句来检查“File”对象是否打开了特定文件的条件。为此,使用了“is_open”函数。如果文件为空,文件流对象将在文件中输入 6 行,如下图所示。之后,File 对象将关闭输出流。现在,我们通过“ios::in”声明打开了带有流对象“File”的同一个文件www.linuxmi.com.txt。此处使用“if”语句来交叉文件是否为空。如果是这样,则声明字符串类型变量“data”。while 循环中的 getline() 函数将逐行从 File 对象中获取数据并将其保存到变量“data”中。这个变量“数据”将用于在shell上显示行。最后,文件对象被关闭。
 
 

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读