Вопросы с тегом «exception-handling»

Исключением является необычное условие, которое требует отклонения от нормального потока программы. Обычно исключение не должно приводить к полному отказу, а должно сопровождаться обработчиком исключения. Обработка исключений является встроенной конструкцией во многих языках программирования. Обычно исключения обрабатываются путем разматывания стека, что приводит к откату до определенного состояния вне области действия исключения, а затем вызывает блок или процедуру-обработчик.

10
Есть ли разница между «throw» и «throw ex»?
Есть несколько постов, которые спрашивают, какая разница между этими двумя уже есть. (почему я должен даже упомянуть об этом ...) Но мой вопрос отличается от того, что я называю «throw ex» в другом богоподобном методе обработки ошибок. public class Program { public static void Main(string[] args) { try { // …

11
Получить описание исключения и трассировку стека, вызвавшего исключение, все в виде строки
Я видел много сообщений о трассировке стека и исключениях в Python. Но не нашел то, что мне нужно. У меня есть кусок кода Python 2.7, который может вызвать исключение. Я хотел бы поймать его и присвоить строке его полное описание и трассировку стека, которая вызвала ошибку (просто все, что мы …


19
Получить строку подключения из App.config
var connection = ConnectionFactory.GetConnection( ConfigurationManager.ConnectionStrings["Test"] .ConnectionString, DataBaseProvider); И это мой App.config: <?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" /> </connectionStrings> </configuration> Но когда мой проект запускается, это моя ошибка: В экземпляре объекта не задана ссылка на объект.

8
В чем разница между `throw new Error` и` throw someObject`?
Я хочу написать общий обработчик ошибок, который будет отлавливать пользовательские ошибки, специально созданные в любом экземпляре кода. Когда я сделал, throw new Error('sample')как в следующем коде try { throw new Error({'hehe':'haha'}); // throw new Error('hehe'); } catch(e) { alert(e); console.log(e); } Журнал показывает в Firefox как Error: [object Object]и я …

5
Как написать trycatch в R
Я хочу написать trycatchкод для устранения ошибки при загрузке из Интернета. url <- c( "http://stat.ethz.ch/R-manual/R-devel/library/base/html/connections.html", "http://en.wikipedia.org/wiki/Xz") y <- mapply(readLines, con=url) Эти два утверждения выполняются успешно. Ниже я создаю несуществующий веб-адрес: url <- c("xxxxx", "http://en.wikipedia.org/wiki/Xz") url[1]не существует. Как написать trycatchцикл (функцию), чтобы: Если URL неверный, вывод будет: «Веб-адрес неверный, не могу …

16
Почему «кроме: пройти» плохая практика программирования?
Я часто вижу комментарии к другим вопросам переполнения стека о том, как except: passне рекомендуется использовать. Почему это плохо? Иногда мне просто все равно, что это за ошибки, и я просто хочу продолжить с кодом. try: something except: pass Почему использование except: passблока плохо? Что делает это плохо? Это тот …

7
Обработка InterruptedException в Java
В чем разница между следующими способами обработки InterruptedException? Каков наилучший способ сделать это? try{ //... } catch(InterruptedException e) { Thread.currentThread().interrupt(); } ИЛИ try{ //... } catch(InterruptedException e) { throw new RuntimeException(e); } РЕДАКТИРОВАТЬ: Я хотел бы также знать, в каких сценариях используются эти два.

13
Вы (действительно) пишете безопасный код исключения? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

19
Как я могу обработать предупреждение функции file_get_contents () в PHP?
Я написал такой код PHP $site="http://www.google.com"; $content = file_get_content($site); echo $content; Но когда я удаляю "http: //" из $site я получаю следующее предупреждение: Предупреждение: file_get_contents (www.google.com) [function.file-get-contents]: не удалось открыть поток: Я попробовал tryи , catchно это не сработало.

14
Зачем нам нужно предложение «finally» в Python?
Я не знаю , почему мы должны finallyв try...except...finallyотчетности. На мой взгляд, этот блок кода try: run_code1() except TypeError: run_code2() other_code() то же самое с этим, используя finally: try: run_code1() except TypeError: run_code2() finally: other_code() Я что-то упускаю?

4
Поймать исключение при использовании Python с оператором
К моему стыду, я не могу понять, как обработать исключение для оператора python «with». Если у меня есть код: with open("a.txt") as f: print f.readlines() Я действительно хочу обработать «файл не найден исключение», чтобы сделать что-то. Но я не могу написать with open("a.txt") as f: print f.readlines() except: print 'oops' …

11
Лучшие практики для отлова и повторного выброса исключений .NET
Какую наилучшую практику следует учитывать при отлове исключений и повторном их отбрасывании? Я хочу убедиться, что Exceptionобъект InnerExceptionи трассировка стека сохранены. Есть ли разница между следующими блоками кода в способе их обработки? try { //some code } catch (Exception ex) { throw ex; } Vs: try { //some code } …

6
Поймать исключение, выданное асинхронным пустым методом
Используя асинхронную CTP от Microsoft для .NET, возможно ли перехватить исключение, вызванное асинхронным методом в вызывающем методе? public async void Foo() { var x = await DoSomethingAsync(); /* Handle the result, but sometimes an exception might be thrown. For example, DoSomethingAsync gets data from the network and the data is …

11
Что произойдет, если блок finally генерирует исключение?
Если блок finally создает исключение, что именно происходит? В частности, что происходит, если исключение выдается на полпути через блок finally. Вызваны ли остальные операторы (после) в этом блоке? Я знаю, что исключения будут распространяться вверх.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.