Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2010, 23:09   #1
Pti44ka
Пользователь
 
Аватар для Pti44ka
 
Регистрация: 02.09.2009
Сообщений: 56
По умолчанию Создание пользовательского исключения

Подскажите, пожалуйста, как создать пользовательское исключение. Я написала код.

Код:
VERTEX_COUNT = Convert.ToInt32(STREAM_READER.ReadLine());
Мы открываем файл и там должна находится строка, которая будет означать количество вершин фигуры и потом переводим это значение в тип int. Если такой строки нет, то нужно выдать исключение " В файле не указано количество вершин. Файл не может быть обработан").

Я пробовала многими методами, но у меня постоянно пишет,что ошибка.
Сначала я создала класс MyException c конструктором без параметров.
Код:
public class MyException : Exception
{
    public MyException()
    {
      
         MessageBox.Show("В файле не указано количество вершин. Файл не может быть обработан");
    }
Потом я сделала так:
Код:
 if (STREAM_READER.ReadLine() == "")
                {
                    throw new MyException();

                }

                else
                
                    VERTEX_COUNT = Convert.ToInt32(STREAM_READER.ReadLine());
Но когда я запускаю, то пишет исключение в строке VERTEX_COUNT = Convert.ToInt32(STREAM_READER.ReadL ine());, которое не обработано.

Пробовала сделать еще другим способом:

Код:
try
{
VERTEX_COUNT = Convert.ToInt32(STREAM_READER.ReadLine());
throw new MyException();
}
catch(MyException ex)
{
MessageBox.Show(ex.Message);
}
Все равно пишет, что ошибка в той же строке. Подскажите, пожалуйста, как правильно создать пользовательское исключение для строки VERTEX_COUNT = Convert.ToInt32(STREAM_READER.ReadL ine()?
Pti44ka вне форума Ответить с цитированием
Старый 02.06.2010, 08:11   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Все равно пишет, что ошибка в той же строке
Тогда будьте так любезны привести текст той ошибки ?
BOBAH13 вне форума Ответить с цитированием
Старый 02.06.2010, 09:16   #3
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Вы ловите исключение типа MyException, а из Convert.ToInt32 "вылетает" исключение другого типа и потому не обрабатывается положенным образом.
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массив эллементов пользовательского класса windzor Общие вопросы .NET 4 02.03.2010 19:53
Запуск приложения на сервере с пользовательского компьютера maLoy*508 Операционные системы общие вопросы 12 07.07.2009 21:20
Создание трехмерного пользовательского интерфейса NSV Компоненты Delphi 25 26.06.2009 21:32
Задача на применение пользовательского типа запись Маськ@ Паскаль, Turbo Pascal, PascalABC.NET 0 07.05.2009 22:28
Создание пользовательского словаря kekur Помощь студентам 4 11.03.2008 12:10