Всем привет, начал учить язык C# по этому видеоролику
https://www.youtube.com/watch?v=w8rRhAup4kg&lc=Ugx...
Там создается Pacman в консоли для примера, и у меня, как и ещё у некоторых людей в комментариях, возникает определенная ошибка:
"Unhandled exception. System.IndexOutOfRangeException: Index was outside the bounds of the array.
at System.String.get_Chars(Int32 index)
at Pacman.Program.ReadMap(String path) in D:\Рабочая папка\C# proj\Pacman\Pacman\Program.cs:line 27
at Pacman.Program.Main(String[] args) in D:\Рабочая папка\C# proj\Pacman\Pacman\Program.cs:line 11
D:\Рабочая папка\C# proj\Pacman\Pacman\bin\Debug\net6.0\Pacman.exe (процесс 3320) завершил работу с кодом -532462766.
Нажмите любую клавишу, чтобы закрыть это окно: "
С чем она связана и как решить, я уже не знаю куда ещё написать и у кого спросить
using System;
using System.IO;
namespace Pacman
{
internal class Program
{
static void Main(string[] args)
{
char[,] map = ReadMap("map.txt");
DrawMap(map);
}
private static char[,] ReadMap(string path)
{
string[] file = File.ReadAllLines("map.txt");
char[,] map = new char[GetMaxLengthOfLine(file), file.Length];
for (int x = 0; x < map.GetLength(0); x++)
{
for (int y = 0; y < map.GetLength(1); y++)
{
map[x, y] = file[y][x];
}
}
return map;
}
private static void DrawMap(char[,] map)
{
for (int y = 0; y < map.GetLength(1); y++)
{
for (int x = 0; x < map.GetLength(0); x++)
{
Console.Write(map[x, y]);
}
Console.Write("\n");
}
}
private static int GetMaxLengthOfLine(string[] lines)
{
int maxLength = lines[0].Length;
foreach (var line in lines)
if (line.Length > maxLength)
{
maxLength = line.Length;
}
return maxLength;
}
}
}