簡體   English   中英

如何使用 C++ 在文件中跳轉一行

[英]How to jump a line in a file using C++

我想在我的文件中增加第二行,但我不能。 我該怎么做?

這是我的文件內容

0
0

我想將第二個“0”增加 1。這是我的代碼:

#include <iostream>
#include <fstream>
#include <string>

int main()
{
    std::fstream file;
    file.open("file1.txt");

    std::string line;
    getline(file, line);
    getline(file, line);
    int a = std::stoi(line);
    ++a;
    line = std::to_string(a);
    file.close();

    file.open("file1.txt");
    std::string line1;
    getline(file, line1);
    getline(file, line1);
    file << line;
    file.close();
}

你太努力了。 這是簡單的方法

int main()
{
    std::ifstream file_in("file1.txt");
    int a, b;
    file_in >> a >> b;
    file_in.close();
    ++b;
    std::ofstream file_out("file1.txt");
    file_out << a << '\n' << b << '\n';
    file_out.close();
}

讀取文件的全部內容。 進行必要的修改。 寫入文件的全部內容。

可以進行部分更新(如您所嘗試的那樣),但這很棘手。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM