我使用java.util.logging
创建了两个日志文件。
这是它的样子。
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)
是否有我必须更改的属性或者它与权限有关吗?
如果您需要更多代码或者我的问题不够清楚,请告诉我。
最佳答案
这是因为 FileHandler 类不会动态创建子目录,因此您必须在实例化 FileHandler 之前创建日期目录。
也许您忘记在第一个示例中使用“logDate”。
问候,
关于java - 使用文件处理程序创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16565442/