В произвольном текстовом файле найти самую длинную строку - C#
Формулировка задачи:
Всем доброго времени суток!
Наконец-то дошли руки до изучения C#) Изучаю самостоятельно.
Дошел до работы с файлами.
Поставлена задача: в произвольном текстовом файле найти самую длинную строку.
Вот на что хватило моей фантазии:
Но никак не покидает ощущение, что можно было всё сделать проще)
Подскажите, подводит ли ощущение?
// Находим самую длинную строку в файле
FileStream file2 = new FileStream("d:\\text.txt", FileMode.Open);
StreamReader read = new StreamReader(file2);
string[] str = new string[5]; //Массив строк для записи их из файла
int i = 0;
while (!read.EndOfStream) // Записываем каждую строку в массив, пока не дойдем до конца файла
{
str[i] = read.ReadLine();
i++;
}
string max = str[0];
int b = 0;
foreach(string stroka in str)
{
if (str[b].Length > max.Length)
{
max = str[b];
}
b++;
}
read.Close();
Console.WriteLine("Самой длинной в файле оказалась строка: "+max);
Console.ReadKey();Решение задачи: «В произвольном текстовом файле найти самую длинную строку»
textual
Листинг программы
string maxLine = null;
using (var reader = new StreamReader("file.txt"))
{
string current = null;
while (!reader.EndOfStream) // Записываем каждую строку в массив, пока не дойдем до конца файла
{
current = reader.ReadLine();
if (maxLine == null || maxLine.Length < current.Length)
maxLine = current;
}
}
Console.WriteLine("Самой длинной в файле оказалась строка: " + maxLine);
Console.ReadKey();