Два самых простых способа как прочитать текстовый файл построчно на C#. В обоих случаях используется using System.IO;. Напишу сразу примеры кода без всяких прелюдий.
Способ 1
Классический вариант чтения файла построчно:
StreamReader f = new StreamReader("test.txt"); while (!f.EndOfStream) { string s = f.ReadLine(); // что-нибудь делаем с прочитанной строкой s } f.Close();
Еще один пример, как можно организовать цикл построчного чтения:
string s; StreamReader f = new StreamReader("test.txt"); while ((s = f.ReadLine()) != null) { // что-нибудь делаем с прочитанной строкой s } f.Close();
Указать кодировку при чтении файла (например, DOS-кодировку) можно так:
StreamReader f = new StreamReader("test.txt", Encoding.GetEncoding(866));
Так же можно использовать обёртку using чтобы не закрывать файл после чтения.
string s; using (var f = new StreamReader("test.txt", Encoding.GetEncoding(1251))) { while ((s = f.ReadLine()) != null) { // что-нибудь делаем с прочитанной строкой s } }
Способ 2
Прочитать весь файл целиком в массив строк:
string[] lines = File.ReadAllLines("test.txt"); foreach (string s in lines) { // что-нибудь делаем с прочитанной строкой s }
По аналогии, кстати, можно и записывать построчно в файл, использовав StreamWriter, f.WriteLine и File.WriteAllLines. Побробнее смотрите в следующей статье.
Комментарии к статье:
Автору - спасибо большое, очень выручил!
Добавить комментарий: