Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

Как при отлове ошибки в try...except выскочить в определённое м.   Найти похожие ветки 

 
Zhekson   (2004-11-24 15:45) [0]

При обработке кучи файлов в блоке try...except отлавливаю ошибку. Как перейти к обработке следующего файла?

Goto - не помогает.


 
Amoeba ©   (2004-11-24 15:47) [1]

Заключай в try...except обработку КАЖДОГО файла по отдельности, а не всей кучи.


 
Zhekson   (2004-11-24 15:58) [2]


while not Eof(fpc) do
 begin
................................
 for i := 1 to 37 do
  begin
   try
   data[i] := data[i] / count - ped[i] * 0.1;
   except
    on EInvalidOp do
       begin
        Beep();
        MessageDlg("???"), mtWarning, [mbOk], 0);
        GoTo N1; //типа за конец обработки файла
       end
    end;
   aver1 := aver1 + data[i];
  end;
........................................
 end;


всмысле у меня try...Except не глобальный отлов ошибок во всей обработке, а при обработке конкретного файла, конкретного действия.


 
Anatoly Podgoretsky ©   (2004-11-24 16:07) [3]

N1 не наблюдается.


 
Zhekson   (2004-11-24 16:15) [4]

Метки в таких случаях вообще нельзя использовать:

The GOTO statement cannot jump into or out of an exception handling statement.

Может есть другой способ?


 
Anatoly Podgoretsky ©   (2004-11-24 16:17) [5]

Они и не нужны, но ты не показываешь где ты хочешь оказаться, вот и не наблюдается.


 
Digitman ©   (2004-11-24 16:19) [6]


> Как перейти к обработке следующего файла?


при чем здесь "файл" ?


 
Zhekson   (2004-11-24 16:40) [7]

[5]> оказаться хочу между
(закончил обработку этого файла) и (пора приступить к обработке следующего)

[6]> впринципе не при чём... но и вопрос ведь не про файлы...

просто нужно при отлове ошибки скакнуть за пределы блока try...except


 
Zhekson   (2004-11-24 16:40) [8]

Удалено модератором


 
Anatoly Podgoretsky ©   (2004-11-24 16:47) [9]

(закончил обработку этого файла) и (пора приступить к обработке следующего) тоже не наблюдается


 
Rem ©   (2004-11-24 16:48) [10]

>>просто нужно при отлове ошибки скакнуть за пределы блока try...except в нужную позицию

Посмею предложить разместить "нужную позицию" сразу же за "блоком try...except".


 
Zhekson   (2004-11-24 16:57) [11]

Rem [10]>
мне такой вариант не подходит, потому как за try...except находится обработка, которая не имеет смысла, если отловлена ошибка.


 
Плохиш ©   (2004-11-24 16:59) [12]

Вместо goto xxx Continue.


 
wal ©   (2004-11-24 17:01) [13]

Zhekson   (24.11.04 16:57) [11]
Ну и заноси, все, что не имеет смысла при ошибке, под try, при ошибке оно выполнено не будет.


 
Digitman ©   (2004-11-24 17:08) [14]


> Zhekson   (24.11.04 16:57) [11]
> мне такой вариант не подходит, потому как за try...except
> находится обработка, которая не имеет смысла, если отловлена
> ошибка.


"Вы не любите кошек ? да Вы просто не умеете их готовить !" (С)


 
Zhekson   (2004-11-24 17:12) [15]

Плохиш [12]>
не то..., так я вылетаю только из try...except...

хотя потом возможны варианты...

пробую...


 
Плохиш ©   (2004-11-24 17:16) [16]


> Zhekson   (24.11.04 17:12) [15]
> Плохиш [12]>
> не то..., так я вылетаю только из try...except...

А справку по Continue почитать?


 
Sandman25 ©   (2004-11-24 17:17) [17]

while ... do
 try
   LoadFile;
   ProcessFile;
 except
   ShowMessage(...);
 end;


 
Digitman ©   (2004-11-24 17:19) [18]

ДЛЯ очередного_файла ДЕЛАТЬ
 ТРАЙ
   чего тоей душеньке угодно
 ИКЗЭПТ
 ЭНД

ЧТО сложного или непонятного в такой банальнейшей логике ?


 
Zhekson   (2004-11-24 17:39) [19]

Плохиш [12]>
есть контакт. спасибочки.

Digitman[14]>
"Чёж не умею???, умею, только у меня рецепт с которым Вы не знакомы !" (C)


 
Digitman ©   (2004-11-24 18:06) [20]


> Zhekson   (24.11.04 17:39) [19]


а ! ну да, конечно же ! как я забыл-то, лапоть



Страницы: 1 вся ветка

Текущий архив: 2004.12.05;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.024 c
6-1096456036
vasechka
2004-09-29 15:07
2004.12.05
Пауза в потоках


8-1094194724
-Guest-
2004-09-03 10:58
2004.12.05
Как скопировать необходимый фрагмент изображения


11-1073945866
Юрий Ж.
2004-01-13 01:17
2004.12.05
HotKeyEdit?


14-1100293785
Drakon
2004-11-13 00:09
2004.12.05
Свой дистрибутив Linux


1-1101193853
starling13
2004-11-23 10:10
2004.12.05
ANSI в ASCII