Как прочитать строку текстового файла в массив, используя c#, а затем получить элемент по индексу - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь прочитать последнюю строку текстового файла в массив, чтобы я мог получить указанный c элемент массива по индексу, но у меня возникают проблемы при выполнении этого как 1 строка в моем тексте В файле есть много элементов, которым нужно go в массив, а не 1 элемент в строке, поэтому для справки структура моего текстового файла будет выглядеть так: element1,element2,element3 ... По структуре она похожа на CSV-файл.

Мой код, который пока не работает:

string lastline = System.IO.File.ReadLines(myfilepath).Last();
string[] id = new string[](lastline.Split(','));

Затем, после вставки строки в мой массив, я хотел бы вытянуть элемент массива по индексу, например, я хочу извлечь element2 из массива и присвоить его var item2, но я не уверен, как go об этом.

1 Ответ

5 голосов
/ 22 апреля 2020

Не уверен, что я полностью понял ваш вопрос, но получаю одну строку из строкового массива по индексу:

string lastline = System.IO.File.ReadLines(myfilepath).Last();
string[] id = lastline.Split(',');

//string result = id[index];
/* Better way */
string result = id.ElementAtOrDefault(index);

Где index - это индекс элементов с нуля. Таким образом, индекс первой строки будет 0, затем 1 et c. Спасибо Стиву за указание на ошибку при создании массива и подсказку, чтобы избежать IndexOutOfRangeException.
Метод ElementAtOrDefault(index) вернет элемент по индексу или, если индекс выходит за пределы диапазона, вернет элемент по умолчанию, который в данном случае является пустым string.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...