Exemple #1
0
        private static void OpenFile(bool nonRepeatable)
        {           // Метод выводящий окно выбора файла и обрабатывающий файл
            OpenFileDialog ofd = new OpenFileDialog {
                Filter = "text *.txt | *.txt"
            };

            ofd.ShowDialog();

            if (ofd.FileName != string.Empty)
            {
                try
                {
                    using (StreamReader sr = new StreamReader(ofd.FileName, Encoding.Default))                          // открытие файла в стримридере
                    {
                        string[] procFormStrings = { "Наиболее часто употребляемые слова: ", "", string.Join("", TextProcessing.Begin(sr.ReadToEnd(), nonRepeatable)) };
                        draw.Form(new int[] { 3 }, procFormStrings);
                    }
                }
                catch (NotSupportedException)                   // обработка исключения "неподдерживаемого файла"
                {
                    draw.Form(new int[] { 3 }, new string[] { "", "Файл не поддерживавется!" }, true);
                }
                catch (Exception ex)                            // обработка неизвестного исключения
                {
                    draw.Form(new int[] { 3 }, new string[] { "", $"Произошла непредвиденная ошибка: {ex.Message}" }, true);
                }
            }
        }
Exemple #2
0
        static void Main()
        {
            bool exit          = false;
            bool nonRepeatable = false;
            Dictionary <bool, string> repeatable = new Dictionary <bool, string> {
                { true, "ОТКЛ" }, { false, "ВКЛ" }
            };

            while (!exit)
            {               // Запуск цикла главного меню
                string[] strings = { "Выберите желаемое действие ", "", $"0. Выход\n1. Выбор файла *.txt\n2. Отображение НЕповторяемых слов: {repeatable[nonRepeatable]}\n\nИЛИ введите текст для обработки:\n" };
                string   input   = draw.Form(new int[] { 3 }, strings);

                switch (input)
                {
                case "":                            // Обработка пустого ввода
                    break;

                case "0":                               // Выход
                    exit = true;
                    break;

                case "1":                               // Открытие файла
                    OpenFile(nonRepeatable);
                    break;

                case "2":                               // Переключение отображения неповторяемых слов
                    nonRepeatable = !nonRepeatable;
                    break;

                default:                                // Обработка ввода
                    string[] procFormStrings = { "Наиболее часто употребляемые слова: ", "", TextProcessing.Begin(input, nonRepeatable) };
                    draw.Form(new int[] { 3 }, procFormStrings);
                    break;
                }
            }
        }