首页 > 解决方案 > 将二维数组中的值输出到文本文件

问题描述

我正在编写一些 C++ 代码,我目前有一个函数可以从文本文件中读取一些数字并将它们存储到二维数组中。我现在需要将存储在二维数组中的相同数字输出到一个新的文本文件中。我目前在函数中有一些代码可以输出数字,但它们与输入文件的格式不同。正如你在下面看到的。

输入文件格式(每个数字之间的空格)

1 2 3 4 5 6 7 8 9
2 3 4 5 6 7 8 9 1
3 4 5 6 7 8 9 1 2
4 5 6 7 8 9 1 2 3
5 6 7 8 9 1 2 3 4
6 7 8 9 1 2 3 4 5
7 8 9 1 2 3 4 5 6
8 9 1 2 3 4 5 6 7
9 1 2 3 4 5 6 7 8

当前输出文件格式 123456789234567891345678912456789123567891234678912345789123456891234567912345678(这都在一行上)

我从文本文件中读取的函数。

void Grid::LoadGrid(const char filename[])
{
    ifstream file(filename);
    for (int y = 0; y < 9; y++) {
        for (int x = 0; x < 9; x++)
        {           
            file >> m_grid[x][y];
        }
    }
    file.close();
}

我读取文本文件的功能。(m_grid 是二维数组)

void Grid::SaveGrid(const char filename[])
{
    ofstream file(filename);
    for (int y = 0; y < 9; y++) {
        for (int x = 0; x < 9; x++)
        {
            file << m_grid[x][y];
        }
    }
    file.close();
}

如果有人可以帮助我将其输出到文本文件中,那么它将与输入相同,我将不胜感激。

编辑:问题已得到解答。

标签: c++

解决方案


内循环完成后

file << endl;

同样在您的内部循环中可能想要..

file << m_grid[x][y] << " ";

推荐阅读