Перехват ошибок 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;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д