В текстовом файле найти самую длинную строку и ее длину - C#

Узнай цену своей работы

Формулировка задачи:

Добрый вечер. Не могу доделать задачу "Дан текстовый файл. Найти самую длинную строку и ее длину". Текст в файле: mama mila ramy, ramy mila mama, a mamonti ramy ne mili. Как разбить тест именно на строки, что бы потом получить длину строки ? Если в string[] NewText = s1.Split(' '); ставлю Split(',') и в тексте в конце строк ставлю запятую (в string s1 = Regex.Replace(WriteText, "[-.?!,)(:]", ""); убираю запятую), то все работает. Пример наброска решения привожу ниже Спасибо!
static void Main()
        {
            Console.WriteLine("Текст в файле:");
            StreamReader file = new StreamReader("text.txt");
            string WriteText = file.ReadToEnd();
            Console.WriteLine(WriteText);
            string line = " ";
            int max = 0;
 
            string s1 = Regex.Replace(WriteText, "[-.?!,)(:]", "");
            string[] NewText = s1.Split(' ');
            for( int i = 0; i< NewText.Length; i++)
            {
                if(NewText[i].Length > max)
                {
                    max = NewText[i].Length;
                    line = NewText[i];
                }
            }
            Console.WriteLine();
            Console.WriteLine(line);
            Console.WriteLine(max);
 
            Console.ReadLine();
        }

Решение задачи: «В текстовом файле найти самую длинную строку и ее длину»

textual
Листинг программы
using System;
using System.IO;
 
namespace ConsoleApplication7
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "file.txt";
            string longestString = GetLongestString(fileName);
            Console.WriteLine(longestString);
            Console.WriteLine("Length of string = " + longestString.Length);
            Console.ReadKey();
        }
 
        public static string GetLongestString(string fileName)
        {
            string currentString, longestString = "";
            using (StreamReader reader = new StreamReader(fileName))
            {
                while (!reader.EndOfStream)
                {
                    currentString = reader.ReadLine();
                    if (currentString.Length > longestString.Length)
                        longestString = currentString;
                }
                return longestString;
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы