Как создать вывод csv с помощью freemarker? - PullRequest
0 голосов
/ 01 августа 2020

Входными данными для моего шаблона freemarker являются записи: List<List<String>> records = new ArrayList(); каждый список внутри записей - это строка из базы данных; Мне нужно создать CSV; Как я могу записать значения строки в отдельной строке для создания csv.

Вот мой шаблон freemarker: на данный момент он записывает любое значение в другую строку.

   <#list records>
    <#items as record>
        <#list record>
        <#items as value>
           ${value},
        </#items>
        </#list>
    </#items>
    </#list>

``````````
    

1 Ответ

0 голосов
/ 06 августа 2020

В простых случаях #items не требуется, поэтому я привожу пример без этого (но тот же подход работает и с #items).

<#list record as value>${value}<#sep>,</#list>

То есть #list#items) просто многократно печатает содержимое, вложенное между его начальным и конечным тегами (за исключением того, что он игнорирует разрыв строки непосредственно после начального тега). Поэтому, если у вас нет разрыва строки в конце вложенного содержимого, он не печатает разрыв строки.

Начиная с #sep, я добавил это, потому что вы не хотите запятую после последнего значения записи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...