2013-05-15 5 views
1

Я использовал java.util.logging для создания двух лог-файлов. Вот как это выглядит.создать каталог с filehandler

Handler fh = new FileHandler("%h/AntonGUI_Tester/Logfiles/"+logTime+".html"); 
fh.setFormatter(new HTMLTableFormatter());   
logger.addHandler(fh); 
logger.setLevel(Level.START);  

Handler fh2 = new FileHandler("%h/AntonGUI_Tester/Logfiles/"+logDate+"/"+logTime+".log"); 
fh2.setFormatter(new TextFormatter()); 
logger2.addHandler(fh2); 
logger2.setLevel(Level.ALL); 

Я хочу, чтобы создать файл в зависимости от времени и я хочу, чтобы быть сохранены в папке, на основе даты. Первый FileHandler работает, но второй не потому, что по какой-то причине он не может создать каталог.

Вот моя ошибка.

Exception in thread "main" java.io.IOException: Couldn't get lock for %h/AntonGUI_Tester/Logfiles/15-05-2013/13-19-25.log 
    at java.util.logging.FileHandler.openFiles(FileHandler.java:372) 
    at java.util.logging.FileHandler.<init>(FileHandler.java:237) 
    at main.STSMain.main(STSMain.java:77) 

Есть ли свойство, которое мне нужно изменить или оно имеет какое-то отношение к разрешениям?

Если вам нужно больше кода или если мой вопрос был недостаточно ясен, дайте мне знать.

ответ

0

Это потому, что класс FileHandler не создает динамические подкаталоги, вам нужно создать каталог даты, прежде чем инициировать ваш FileHandler.

Возможно, вы забыли использовать «logDate» в первом примере.

С уважением,

Смежные вопросы