Почему вылетает исключение - C#

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

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

Есть метод чтения данных из файла, есть свой класс исключение который выводит сообщение о неправильном формате файла. Делаю следующее:
Листинг программы
  1. public void Load(string path)
  2. {
  3. if (list.Count > 0)
  4. list.Clear();
  5. string ext = Path.GetExtension(path);
  6. try
  7. {
  8. if (ext != ".xml" || ext != ".csv")
  9. throw new InvalidFileFormatException("Ошибка открытия файла: Неверный формат");
  10. else
  11. {
  12. ............................
  13. ..............................
  14. ..............................
  15. }
  16. catch (InvalidFileFormatException e)
  17. {
  18. Console.WriteLine(e.Message);
  19. }
В метод объекта передаю файл csv к примеру:
Листинг программы
  1. cl.Load(@"d:\text.csv");
вылетает исключение, почему?
проверяю дебагером после получения расширения файла переменная ext = ".csv"

Решение задачи: «Почему вылетает исключение»

textual
Листинг программы
  1. using System;
  2. using System.IO;
  3.  
  4. namespace SomeNamespace {
  5.     class InvalidFileFormatException : Exception {
  6.         public InvalidFileFormatException(string message)
  7.             : base(message) {
  8.         }
  9.     }
  10.     class FileName {
  11.         public FileName(string fileName) {
  12.             string ext = Path.GetExtension(fileName);
  13.             if (ext != ".aspx") {
  14.                 throw new InvalidFileFormatException("Invalid file name: " + fileName);
  15.             } else {
  16.                 Console.WriteLine("OK " + fileName);
  17.             }
  18.         }
  19.     }
  20.     class Program {
  21.         static void Main() {
  22.             string ext = Path.GetExtension(@"c:\inetpub\WebSites\MyFirst\Default.aspx");
  23.             string validFdleName = @"c:\inetpub\WebSites\MyFirst\Default.aspx";
  24.             string invalidFileName = @"c:\inetpub\WebSites\MyFirst\Default.asp";
  25.             FileName fm;
  26.             try {
  27.                 fm = new FileName(validFdleName);
  28.             } catch (InvalidFileFormatException e) {
  29.                 Console.WriteLine(e.Message);
  30.             }
  31.             try {
  32.                 fm = new FileName(invalidFileName);
  33.             } catch (InvalidFileFormatException e) {
  34.                 Console.WriteLine(e.Message);
  35.             }
  36.             Console.ReadKey();
  37.         }
  38.     }
  39. }

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


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

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

11   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы