我有一个项目,应该将结果打印在控制台的屏幕上,也可以打印到文件中。我用弹簧引导和logback。我可以将结果打印为屏幕上的表格,但在logback日志文件中不能作为一种良好的格式。欢迎任何想法和建议。
见下面的输出结果.
+------------------+---------------+---------------+--------------+---------------+---------------+--------------+--------------+
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
+------------------+---------------+---------------+--------------+---------------+---------------+--------------+--------------+
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n
+------------------+---------------+---------------+--------------+---------------+---------------+--------------+--------------+ 打印方法:
public static void printListAsTable(List<ResultControl> resultcontrolList) {
String format = "| %-16s | %-13s | %-13s | %-12s | %-13s | %-13s | %-12s | %-12s |%n";
log("+------------------+---------------+---------------+--------------+---------------+---------------+--------------+--------------+");
log(format,"Id", "Net", "Mat", "Dat", "Apo", "Nato", "Nano", "Pico");
log("+------------------+---------------+---------------+--------------+---------------+---------------+--------------+--------------+");
for (ResultControl result :resultcontrolList ) {
log(format, result.getId(), result.getNet , result.getMat , result.getDat , result.getApo , result.getNato , result.getNano , result.getPico );
}
log("+------------------+---------------+---------------+--------------+---------------+---------------+--------------+--------------+");
}
public static void log(String format, Object... args) {
System.out.printf(format, args);
logger.info( format, args);
}发布于 2019-11-06 13:42:35
我确实将日志方法更改为以下内容,它的工作原理与我所期望的一样。
public static void log(String format, Object... args) {
String formatted = String.format(format, args);
log( formatted);
}
public static void log(String message) {
logger.info(message);
}https://stackoverflow.com/questions/58625507
复制相似问题