создать структуру файла для 2D-сетки - PullRequest
0 голосов
/ 04 мая 2018

поэтому для моего алгоритма 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 голосов
/ 04 мая 2018

Не используйте 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++;
    }
...