为2D网格创建文件结构

时间:2018-05-04 16:51:57

标签: c# json a-star

所以对于我的A *算法,我想创建一个设置文件,其中包含创建网格的循环的数据信息。

目前我的手机只需知道他们的现场成本,但这可能会在以后发生变化。我想保持信息的灵活性。

一种简单的方法是创建一个字节数组

grid

但我只能在那里存储现场费用。我考虑过为这个

服用JSON
{
  "1": [ // my first row
    {
      "x": 1, // cell one in row one
      "cost": 1
    },
    {
      "x": 2,
      "cost": null
    },
    {
      "x": 3,
      "cost": 3
    },
    {
      "x": 4,
      "cost": null
    },
    {
      "x": 5,
      "cost": 2
    }
  ],
  "2": [ // my second row
    {
      "x": 1, // cell one in row two
      "cost": 3
    },
    {
      "x": 2,
      "cost": 2
    },
    {
      "x": 3,
      "cost": null
    },
    {
      "x": 4,
      "cost": 1
    },
    {
      "x": 5,
      "cost": 2
    }
  ]
}

通过使用JSON,我可以将更多数据存储到单元格,但这种结构似乎比简单的字节数组更复杂。

有没有更好的解决方案?

1 个答案:

答案 0 :(得分:0)

不要只使用JSON读取文本文件。

String input = File.ReadAllText( @"c:\myfile.txt" );

int i = 0, j = 0;
int[,] result = new int[10, 10];
foreach (var row in input.Split('\n'))
{
    j = 0;
    foreach (var col in row.Trim().Split(' '))
    {
        result[i, j] = int.Parse(col.Trim());
            j++;
        }
        i++;
    }