Какой самый элегантный способ проверить, будет ли каталог, в который будет записываться файл, существует, а если нет, создайте каталог с помощью Python? Вот что я пробовал:
import os
file_path = "/my/directory/filename.txt"
directory = os.path.dirname(file_path)
try:
os.stat(directory)
except:
os.mkdir(directory)
f =
... Не рекомендуется просто ловить System.Exception
. Вместо этого должны быть пойманы только «известные» исключения.
Теперь это иногда приводит к ненужному повторяющемуся коду, например:
try
{
WebId = new Guid(queryString["web"]);
}
catch (FormatException)
{
WebId = Guid.Empty;
}
catch (OverflowException)
{
... Как идиоматически использовать JUnit4 для проверки того, что какой-то код вызывает исключение?
Хотя я, конечно, могу сделать что-то вроде этого:
@Test
public void testFooThrowsIndexOutOfBoundsException() {
boolean thrown = false;
try {
foo.doStuff();
} catch (IndexOutOfBoundsException e) {
thrown = true;
... Недавно я столкнулся с этой ошибкой в моем веб-приложении:
Java. яз. OutOfMemoryError: PermGen space
Это типичное приложение Hibernate / JPA + IceFaces / JSF, работающее на Tomcat 6 и JDK 1. 6. По-видимому, это может произойти после повторного развертывания приложения
...Как правильно объявлять пользовательские классы исключений в современном Python? Моя основная цель - следовать всем стандартным классам исключений, чтобы (например) любая дополнительная строка, включенная в исключение, была распечатана любым инструментом, который перехватил исключение.
Под «современным Python» я подразумеваю то, что
...Я хочу проверить, существует ли переменная. Сейчас я делаю что-то вроде этого:
try:
myVar
except NameError:
# Do something.
Есть ли другие способы без исключений?
Когда вы просто хотите сделать попытку, кроме как без обработки исключения, как вы делаете это в Python?
Является ли следующий способ сделать это правильно?
try:
shutil.rmtree(path)
except:
pass
На Java я хочу сделать что-то вроде этого:
try {
...
} catch (IllegalArgumentException, SecurityException,
IllegalAccessException, NoSuchFieldException e) {
someCode();
}
. , , вместо:
try {
...
} catch (IllegalArgumentException e) {
someCode();
} catch (SecurityException e) {
someCode();
... Как написать тест, который завершается неудачно, только если функция не выдает ожидаемое исключение?
У меня есть простой метод установки для свойства, и null
не подходит для этого конкретного свойства. Я всегда разрывался в этой ситуации: я должен бросить IllegalArgumentException
или NullPointerException
? От javadocs оба кажутся подходящими. Есть ли какой-то понятый стандарт? Или
У меня есть метод, который должен вернуть объект, если он найден.
Если он не найден, я должен:
Я всегда верил, что если метод может вызвать исключение, то неосторожно не защищать этот вызов значимым блоком try.
Я только что опубликовал ' Вы должны ВСЕГДА оборачивать вызовы, которые могут бросать попытки, ловить блоки. 'на этот вопрос , и мне
...В течение ряда лет я не мог получить достойный ответ на следующий вопрос: почему некоторые разработчики так против проверенных исключений? У меня было много разговоров, читаю что-то в блогах, читаю то, что говорил Брюс Экель (первый человек, которого я увидел,
...У меня есть исключения, созданные для каждого условия, которое мое приложение не ожидает. UserNameNotValidException
, PasswordNotCorrectException
и т. Д.
Однако мне сказали, что я не должен создавать исключения для этих условий. В моем UML эти ARE являются исключениями для основного
...Мне было интересно узнать, как лучше всего указывать недопустимые комбинации аргументов в Python. Я сталкивался с несколькими ситуациями, когда у вас есть такая функция:
def import_to_orm(name, save=False, recurse=False):
"""
:param name: Name of some external entity to import.
:param save:
... Есть несколько постов, которые спрашивают, какая разница между этими двумя уже есть.
(почему я должен даже упомянуть об этом. , , )
Но мой вопрос отличается от того, что я называю «throw ex» в другом методе обработки, похожем на бог
...В C # я могу использовать инструкцию throw;
, чтобы перебросить исключение при сохранении трассировки стека:
try
{
...
}
catch (Exception e)
{
if (e is FooException)
throw;
}
Есть ли что-то подобное в Java (, которое не
...Я пытаюсь получить доступ к HTTP-ссылке, используя HttpURLConnection
в Android, чтобы загрузить файл, но я получаю это предупреждение в LogCat
:
ПРЕДУПРЕЖДЕНИЕ / Система. ошибка (223): Java. сеть. SocketException: В доступе отказано (возможно, отсутствует разрешение на доступ в Интернет)
Я
...Я использую. NET 3. 5, пытаясь рекурсивно удалить каталог, используя:
Directory.Delete(myPath, true);
Насколько я понимаю, это должно произойти, если файлы используются или есть проблема с разрешениями, но в противном случае он должен удалить каталог и все его содержимое.
Тем не
...Я печатаю сообщения об исключениях Python в файл журнала с logging.error
:
import logging
try:
1/0
except ZeroDivisionError as e:
logging.error(e) # ERROR:root:division by zero
Можно ли напечатать более подробную информацию об исключении и коде, который его сгенерировал, чем просто
...