Как записать строки из файла в коллекцию строк textBox?
У меня есть текстовый документ, в котором в столбик прописаны слова. Я получаю и вывожу эти слова так:
System.IO.StreamReader file = new System.IO.StreamReader(@"F:\VS Projects\Со звёздочкой\diceware.txt");
while ((line = file.ReadLine()) != null)
{
textBox1.AppendText(line + "\t\t");
}
Но тогда выходит, что я не добавляю в коллекцию, а просто переношу курсор. В дальнейшем мне нужно перебирать строки, чтобы получить определённое слово. Как записывать в коллекцию?
Пробовал делать так:
textBox1.Lines[0] = line;
Но тогда выдаёт исключение System.IndexOutOfRangeException.
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
Прочитать в массив можно одной строчкой кода.
string[] lines = File.ReadAllLines(@"F:\VS Projects\Со звёздочкой\diceware.txt");
Далее можно записать это все в текстбокс так же одной строчкой
textBox1.Text = string.Join("\t\t", lines);
Ну и так же можно работать с этим массивом, например
foreach (string line in lines)
{
textBox1.AppendText(line + "\t\t");
}
или
textBox1.Text = lines[0];
или
lines[0] = "text";
Либо преобразовать в коллекцию и изменять ее состав
List<string> list = lines.ToList();
list.Add("text");
И записать ее в файл
File.WriteAllLines("file.txt", list.ToArray());