转到行号,然后使用C ++编辑文件中的字符串

时间:2015-05-29 09:28:07

标签: c++ file file-io

我正在尝试创建一个函数,它获取一个Line_number和第二个字符串两个参数。此函数将打开文件预先填充并跳过直到达到“Line_number”行,获取该行并发布其他行代替。但它不起作用。我见过其他解决方案,但无法找到正确的解决方案。请帮助我。

   fstream Inoutput_file;
   void BackPatch(int GotoLineNo, string LineNo)
   {

     for (int i = 1; i <= GotoLineNo; i++)
     {
        char* str = new char[20];
         Inoutput_file.getline(str, 20, '\n');
        if (i == LineNo-1)
        {
            Inoutput_file.seekp(Inoutput_file.tellg());
            Inoutput_file.getline(str, 20, '\n');
            cout << str << endl;                //prints the correct line
            Inoutput_file << "Goto " + str <<endl;  //donot work
            cout << "Goto " + str<<endl;      // Prints correct line
        }

  }
  Inoutput_file.seekp(0);
  Inoutput_file.seekg(0);
}

主要:

  Inoutput_file.open("example.txt");
  BackPatch(3,"Print this to Line 3 instead");
  Inoutput_file.close();

我还想在这里提到我已经用不同的“ifstream”实例打开了相同的文件,以便为我的程序的其余部分工作。

1 个答案:

答案 0 :(得分:0)

fstream Inoutput_file;    void BackPatch(int GotoLineNo,string LineNo)    {

{{1}}

}