0

我目前正在将测试执行结果记录到一个文本文件中(一个现有的)。如何创建一个带有时间戳的文本文件并将其保存在 windows 目录中?我目前使用的代码是

    File outputResultFile = new File(CompleteFileNameForNotepad);
    PrintWriter outputFile = new PrintWriter(new FileWriter(outputResultFile));
    String str = "text to write in to the file";
    outputFile.println(str);
    outputFile.close();

谢谢你的帮助。

4

2 回答 2

4
String fileName = new SimpleDateFormat("yyyy-MM-ddTHH-mm-ss").format(new Date()) + ".txt";
File outputResultFile = new File(fileName);
...

注意:您所说的记事本通常称为“文件”。

于 2012-06-19T14:38:56.820 回答
2

您应该考虑改用日志框架。例如,查看Log4j。然后,您可以通过调整日志记录配置来更改日志记录格式以及记录哪些类。这意味着您不必更改代码。

下面的 log4j.properties 将使用模式“2000-09-07 14:07:41,508 [main] INFO MyApp - Entering application”将包 foo 下的所有类以 WARN 或更高级别记录到控制台。

log4j.rootLogger=DEBUG, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout

# Print the date in ISO 8601 format
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n

# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN

要登录到文件,请使用不同的 Appender,例如 org.apache.log4j.FileAppender 或 org.apache.log4j.RollingFileAppender。对于您的目的 org.apache.log4j.DailyRollingFileAppender 将是合适的。

于 2012-06-19T14:41:20.680 回答