Перехват ошибок try-catch - C#
Формулировка задачи:
В общем, нужно перехватить ошибки, через try-catch, как я понимаю, в моем случае, ошибка возможна при вводе не правильного параметра строки (Пути директории).
Знаю, что нужно сделать через try-catch, но никогда его не использовал.
Если не трудно, подскажите пожалуйста, вот код:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; using System.Diagnostics; namespace Files { class Program { static string way = null; static void Main(string[] args) { #region Путь к каталогу for (int k = 0; k < args.Length; k++) { //Меню выбора. string enter = args[k]; switch (enter.ToLower()) { case "way": case "/way": { way = args[k + 1]; // Входной параметр (Путь к директории) break; } } } #endregion if (!Directory.Exists(way + @"\")) // Проверяем, существует ли данный каталог { Directory.CreateDirectory(way + @"\"); // если нет, то создаем его. if (!File.Exists(way + @"\information.txt")) // Проверяем, существует ли данный файл { File.CreateText(way + @"\information.txt"); // Если нет, то создаем его } } string[] files1 = Directory.GetFiles(way + @"\"); // список всех файлов в директории string s = ""; StreamWriter info = new StreamWriter(way + @"\information.txt"); // Поток, для чтения и записи информации info.WriteLine("Список файлов, найденых в данной директории:"); // Записываем в лог-файл (1) for (int j = 0; j < files1.Length; j++) { info.WriteLine(string.Format("{0}:{1}", j + 1, files1[j])); // Записываем в лог-файл (2) } for (int i = 0; i < files1.Length; i++) { s = Path.GetFileNameWithoutExtension(files1[i]); // Присваиваем переменной значение имени [i]-го файла if (!Directory.Exists(way + @"\" + s)) // Проверяем, существует ли данный каталог { Directory.CreateDirectory(way + @"\" + s); // если нет, то создаем его. info.WriteLine(string.Format("Создание каталога {0}", s)); // Записываем в лог-файл (3) } else { info.WriteLine(string.Format("Попытка Создания каталога {0}. Каталог небыл создан, т.к. уже существует", s)); // Записываем в лог-файл (4) } } info.WriteLine("--------------------------------------------"); // Записываем в лог-файл (5) info.Close(); // Закрываем лог-файл. Console.WriteLine (string.Format("Обработка данных успешно завершена, пожалуйста, проследуйте в директорию {0}, для завершения программы, нажмите любую клавишу",way+@"\")); Console.ReadKey(); } } }
Решение задачи: «Перехват ошибок try-catch»
textual
Листинг программы
catch (Exception e) { Console.WriteLine(e.Message); zapisdel(e.Message); sendinfo = "1"; return sendinfo; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д