一个文件读取函数

A file reading function

本文关键字:文件 读取 函数 一个      更新时间:2023-10-16

我需要写一个函数从文件中读取,理想情况下,将该文件中的字符串存储到string s的vector中。

到目前为止,我有这样的东西:

void loadCars() {
    fstream carFile;
    string car;
    carFile.open("car.txt");
    if (carFile.is_open()) {
        while (getline(carFile, car)) {
            cout << car << "n";
        }
        carFile.close();
    } else {
        cout << "unable to open file" << endl;
    }
}

谁能帮助我,所有我需要的函数做的是从包含四个字符串的文本文件中读取:

car1
car2
car3
car4

我想读取它们并把它们化成一个理想的向量。cout纯粹是为了我试图测试它是否有效,但它无法打开文件。

,理想情况下将该文件中的字符串存储到字符串向量中。

将函数扩展如下,以收集向量中的结果:

void loadCars(std::vector<std::string>& result) {
    result.clear();
    fstream carFile;
    string car;
    carFile.open("car.txt");
    if (carFile.is_open()) {
        while (getline(carFile, car)) {
            result.push_back(car);
            cout << car << "n";
        }
        carFile.close();
    }
else {
        cout << "unable to open file" << endl;
    }
}

至于你打开文件的问题,这很可能是因为文件在你的程序当前工作目录中不可用(检查你的调试设置),或者你没有访问它的权限。

您可以定义一个字符串向量,例如

#include <array>
std::vector<std::string> cars;
// Get your car...
cars.push_back(car);

查看此处的示例以获取最新的参考。