Почему вылетает исключение - C#
Формулировка задачи:
Есть метод чтения данных из файла, есть свой класс исключение который выводит сообщение о неправильном формате файла. Делаю следующее:
В метод объекта передаю файл csv к примеру:
вылетает исключение, почему?
public void Load(string path)
{
if (list.Count > 0)
list.Clear();
string ext = Path.GetExtension(path);
try
{
if (ext != ".xml" || ext != ".csv")
throw new InvalidFileFormatException("Ошибка открытия файла: Неверный формат");
else
{
............................
..............................
..............................
}
catch (InvalidFileFormatException e)
{
Console.WriteLine(e.Message);
}cl.Load(@"d:\text.csv");
проверяю дебагером после получения расширения файла переменная ext = ".csv"
Решение задачи: «Почему вылетает исключение»
textual
Листинг программы
using System;
using System.IO;
namespace SomeNamespace {
class InvalidFileFormatException : Exception {
public InvalidFileFormatException(string message)
: base(message) {
}
}
class FileName {
public FileName(string fileName) {
string ext = Path.GetExtension(fileName);
if (ext != ".aspx") {
throw new InvalidFileFormatException("Invalid file name: " + fileName);
} else {
Console.WriteLine("OK " + fileName);
}
}
}
class Program {
static void Main() {
string ext = Path.GetExtension(@"c:\inetpub\WebSites\MyFirst\Default.aspx");
string validFdleName = @"c:\inetpub\WebSites\MyFirst\Default.aspx";
string invalidFileName = @"c:\inetpub\WebSites\MyFirst\Default.asp";
FileName fm;
try {
fm = new FileName(validFdleName);
} catch (InvalidFileFormatException e) {
Console.WriteLine(e.Message);
}
try {
fm = new FileName(invalidFileName);
} catch (InvalidFileFormatException e) {
Console.WriteLine(e.Message);
}
Console.ReadKey();
}
}
}