Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
每次我试图将文本放入日志文件时,Java Logger都会覆盖_Java_File_Overwrite - Fatal编程技术网

每次我试图将文本放入日志文件时,Java Logger都会覆盖

每次我试图将文本放入日志文件时,Java Logger都会覆盖,java,file,overwrite,Java,File,Overwrite,这段代码应该(在底部)将“绿色结果1”放入一个文件中,但每次我运行程序时它都会覆盖该文件。我如何让它将文本放入文件,但不覆盖它?非常感谢您的帮助。您应将文件处理程序作为: int good = (int )(Math.random() * 6 + 1); if(good == 1){ JOptionPane.showMessageDialog(frame, "Green result 1"); Logger logger = Logger.getLogger(DiceRoll.c

这段代码应该(在底部)将“绿色结果1”放入一个文件中,但每次我运行程序时它都会覆盖该文件。我如何让它将文本放入文件,但不覆盖它?非常感谢您的帮助。

您应将
文件处理程序作为:

int good = (int )(Math.random() * 6 + 1);
if(good == 1){
    JOptionPane.showMessageDialog(frame, "Green result 1");
    Logger logger = Logger.getLogger(DiceRoll.class.getName());
    FileHandler fileLog = new FileHandler("Logs.log");
    logger.addHandler(fileLog);
    logger.log(Level.INFO, "Green result 1");
}
在哪里

java.util.logging.FileHandler.append
指定 FileHandler应附加到任何现有文件上(默认值为false)

试试这个

FileHandler fileLog = new FileHandler("Logs.log", true);
更改此项:

FileHandler fileLog = new FileHandler("Logs.log",true);
对此

FileHandler fileLog = new FileHandler("Logs.log");
请注意,第二个参数指定了可选的append参数。设置为true时,将在文件末尾写入,而不会覆盖文件


查看文档:

尝试使用允许您为附加模式指定布尔参数的。

非常感谢。@DarthFigo希望对您有所帮助。一定要把它当作对未来有用的答案。
FileHandler fileLog = new FileHandler("Logs.log", true);