我正在特定路径中创建一个.log文件,但是我有一个问题,创建一个静态类并且每次我调用writing方法就像创建一个新的.log文件一样,注册表必须始终保留在同一个文件上。
这是测试代码:
import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Logger;
import java.util.logging.SimpleFormatter;
public class Utils {
public static void escribirLog(String rutaArchivo, String mensaje) {
Logger logger = Logger.getLogger("MyLog");
FileHandler fh;
try {
fh = new FileHandler(rutaArchivo);
logger.addHandler(fh);
SimpleFormatter formatter = new SimpleFormatter();
fh.setFormatter(formatter);
logger.info(mensaje);
} catch (SecurityException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String... args){
for(int i=1;i<6;i++){
escribirLog("C:\\rutaLog\\archivo.log", "MensajePrueba"+i);
}
}
}
如何才能始终将日志写入同一个文件?
最佳答案
您需要构造一个启用附加选项的 FileHandler,以附加到现有日志文件。
在构建 fileHandler 的行上,将其更改为
new FileHandler(fileName)
至
new FileHandler(fileName, true)
这利用了 this constructor它告诉 FileHandler 追加到文件中。
关于java - 使用记录器创建文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45947146/