Форум: "Основная";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
ВнизКак при отлове ошибки в 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;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.037 c