У меня есть проект, который должен напечатать результат на экране в консоли, а также в файл. Я использую весеннюю загрузку с 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);
}