Метод File.ReadLines
Метод File.ReadLines возвращает
IEnumerable<string>: файл
открывается при переборе и читается
порциями. Это не то же самое, что
ReadAllLines,
который сразу строит string[].
Есть ReadLinesAsync.
Синтаксис
foreach (string line in File.ReadLines(path))
{
// обработка line
}
Пример
Давайте выведем первую строку из
abcde.txt:
using System;
using System.IO;
using System.Linq;
class Program
{
static void Main()
{
File.WriteAllLines("abcde.txt", new[] { "abcde", "12345" });
string res = File.ReadLines("abcde.txt").First();
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте посчитаем строки через цикл:
using System;
using System.IO;
class Program
{
static void Main()
{
File.WriteAllLines("12345.txt", new[] { "12345", "abcde", "12345" });
int count = 0;
foreach (string line in File.ReadLines("12345.txt"))
{
count++;
}
Console.WriteLine(count);
}
}
Результат выполнения кода:
3
Пример
Давайте соберём длину всех строк:
using System;
using System.IO;
using System.Linq;
class Program
{
static void Main()
{
File.WriteAllLines("abcde.txt", new[] { "abcde", "12345" });
int res = File.ReadLines("abcde.txt").Sum(s => s.Length);
Console.WriteLine(res);
}
}
Результат выполнения кода:
10
Смотрите также
-
ReadAllLines,
весь файл в массив -
WriteAllLines,
запись строк с переводами -
OpenText,
StreamReaderдля текста -
FileNotFoundException,
нет файла при переборе