C ++无法从文件中读取并加载到向量中

时间:2017-01-30 18:03:15

标签: c++ vector file-io ifstream

问题是我有一个文本文件,包含1,000,000到10,000,000行 - 每行包含一个小数值。

我试过这段代码:

    ifstream inData;
    inData.open("file.txt");
    std::vector<double> v1v;
    double s;
    while(inData>>s){
        v1v.push_back(s);
        cout << "Success" << endl;
    }

但它似乎根本不能填满我的载体。我也试过这种方法(注意文件中的行数是1048570):

    double a1[1048570];
    ifstream inData;
    inData.open("file.txt");
    for (int i=0;i<1048570;i++){
        inData >> a1[i];
    }inData.close();

我不明白为什么它不能正常运行,但它没有存储在载体中。

1 个答案:

答案 0 :(得分:0)

您使用的是什么IDE?在某些IDE中,您可能需要在项目的主文件夹中(而不是在源代码文件夹中)读取要读取的文件。在Eclipse中,您需要将文件放在创建空C项目时看到的文件夹中。尝试导航到存储已编译可执行文件的文件夹,将文件放在那里,然后运行它。另外,你试过调试吗?