我很难过。看起来我的文件没有被正确读取,但我不确定我的问题是什么

时间:2018-05-07 02:33:52

标签: c++ filereader

以下代码是我的主要代码。我写了一个创建随机文件的方法。第一行是两个数字。第一个是行数,第二个是列数。然后我根据前2个值得到一个随机数的平方。这很好,我按照我想要的方式获取文件。我的问题是第一个if语句必须给我真实,因为我的输出是"没有文件可以使用。"所以根据我的猜测我的文件没有被看到。

我会弄清楚如何在修复后使用正确的数值制作数组,但我无法使其工作。我甚至尝试将grid1.txt更改为文件地址。是的,我是这里的新人,是的,我确实搜索了互联网,试图解决这个问题。我已经被困在我的问题上,就像2天一样。那么有人可以帮我弄清楚为什么我的文件没被这个程序看到了吗?

int row1 = 0;
int col1 = 0;

generateGridFile(row1, col1);

ifstream gridFile("grid1.txt");

gridFile.open("grid1.txt");

if (! gridFile)
{
    cout << "There is no file to use.";
    return 0;
}

while (!gridFile.eof())
{

    int **a = new int *[row1];

    for (int i = 0; i < row1; i++)
    {
        a[i] = new int[col1];
    }

        for (int i = 0; i < row1; i++)
        {
            for (int j = 0; j < col1; j++)
            {
                a[i][j] = 1; // gridFile >> a[i][j];
                cout << a[i][j];
            }
            cout << "\n";
        }
}
return 0;

1 个答案:

答案 0 :(得分:0)

gridFile.open()来电不是多余的。

According to this,当流已经打开时调用open()(正如您通过调用非默认构造函数所做的那样)将失败,从而使您的代码步入条件。

只需删除该行; - )