首页 > 解决方案 > 在程序开始时使用 ofstream 擦除 C++ 读取文件

问题描述

我正在尝试读取文本文件并输出内容。只是我似乎找不到正确的方法,而我使用过的方法(包括这个)似乎擦除了文本文件。编码:

std::string Line;
std::ifstream File("Account.txt");
if (File.is_open()) {
    while (getline(File, Line)) {
        std::cout << Line << std::endl;
    }
}
else {
    std::cout << "Unable to open File" << std::endl;
}
File.close();

我也在使用:

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

每次程序运行以创建可能是错误的文件时,我都使用此代码(如下),如果是这样,任何人都可以推荐一种仅在文件尚不存在时创建文件的方法

std::ofstream File("Account.txt");
File.close();

标签: c++

解决方案


您的文件正在被您的文件创建代码擦除。

std::ofstream File("Account.txt");
File.close();

要在不擦除现有内容的情况下创建文件,请尝试此操作

std::ofstream File("Account.txt", std::ios_base::app);
File.close();

推荐阅读