У меня возникает странная проблема с исключением indexOutOfBounds. Мне нужно прочитать первый символ каждой строки в массиве.
Я получаю исключение в 5-й строке (linesRead[i][0]). Самое странное для меня то, что когда я пытался добавить строки для отладки, Console.WriteLine(linesRead[0][0])/Console.WriteLine(linesRead[linesRead.Length-1][0]) работает нормально.
string[] linesRead = System.IO.File.ReadAllLines(@"test.txt"); //Just a bunch of lines
for (int i = 0; i < linesRead.Length; i++)
{
if (linesRead[i][0] == '5')
{
//Do stuff
}
}
The text inside of test.txt:
5|f-----g-----c---g-----a---|
6|--c-----------------------|
5|---Aa-f-----g-----c-------|
5|------ccdf-ff-----g-----c-|
6|--------------c-----------|
5|--g-----a------Aa-f-----g-|
5|----c-------------ccdf-f--|
linesRead[i]
имеет значение, и вы можете установить точку останова в коде и использовать окно наблюдения, чтобы узнать, что это за значение. Несколько человек поняли, что в какой-то момент это пустая строка. И вот: некоторые из ваших строк пусты. - person 15ee8f99-57ff-4f92-890c-b56153   schedule 22.08.2019