21xrx.com
2024-11-05 14:49:37 Tuesday
登录
文章检索 我的文章 写文章
C++读取文本文件并为每一行添加行号
2023-07-11 22:44:27 深夜i     --     --
C++ 读取文本文件 行号 添加行号

在C++中,读取文本文件并为每一行添加行号是一项常见的操作。这项任务可以通过使用循环结构和字符串处理函数来实现。

首先,需要打开文件并逐行读取其内容。为此,可以使用文件输入流(ifstream)和getline函数。getline函数将读取每一行的内容并将其存储在字符串对象中。此外,为了存储行号,可以定义一个整型变量并使用++运算符在每个循环迭代中递增该变量。

接下来,可以使用字符串处理函数来将行号添加到每一行的开头。为此,可以使用stringstream对象将整型变量转换为字符串,然后使用字符串连接运算符将其添加到行的开头。最后,可以使用输出流将新的字符串写入新的文本文件。

以下是一个示例代码,用于读取文件并为每一行添加行号:


#include <iostream>

#include <fstream>

#include <sstream>

#include <string>

using namespace std;

int main()

{

  ifstream infile("input.txt");  // 打开输入文件

  ofstream outfile("output.txt"); // 创建输出文件

  int lineNum = 0;        // 定义行号

  string line;          // 定义读取每行内容的字符串

  while (getline(infile, line))

  {

    lineNum++;         // 行号自增

    stringstream ss;      // 创建字符串流对象,用于将整型转为字符串

    ss << lineNum;       // 整型转字符串

    string lineOut = ss.str() + " " + line; // 将行号和原来的行连接起来

    outfile << lineOut << endl; // 写入输出文件

  }

  infile.close(); // 关闭输入文件

  outfile.close(); // 关闭输出文件

  return 0;

}

在这个示例代码中,input.txt是要读取的文件,而output.txt是输出的结果文件。程序从输入文件中读取内容,并将行号添加到每一行开头,然后将结果写入输出文件中。运行程序后,输出文件将会被创建,其中每一行都带有行号。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复