Как отформатировать динамически генерируемую ячейку

Я пытаюсь создать динамический отчет Excel с использованием библиотеки JXLS.
Ниже приведен шаблон jXLS, который я использую в качестве входных данных.

|<jx:forEach items="${headers1}" var="header">   | ${header.headerText} | </jx:forEach>|
|<jx:forEach items="${rows1}" var="rowItem">     |                      |              |
|<jx:forEach items="${rowItem.columns}" var="cell">|    ${cell.value}   |</jx:forEach> |
|</jx:forEach>                                   |                      |              |

Благодаря этому я могу создать отчет в формате Excel с количеством столбцов, возвращаемых набором результатов запроса и значениями. Но проблема, с которой я сталкиваюсь, заключается в том, как отформатировать ячейки, если столбец является столбцом даты. Я не могу применить формат в шаблоне jXLS как отдельную ячейку, представляющую все ячейки в отчете. Вот определение Cell.java

public class Cell {

    public Cell(Object value) {
        super();
        this.value = value;
    }

    private Object value;

    public Object getValue() {
        return value;
    }

    public void setValue(Object value) {
        this.value = value;
    }


}

Как я могу применить форматирование к ячейкам динамически?

1 ответ

JXLS просто использует форматирование, которое вы указали в своем шаблоне. Для динамических данных у них теперь есть очень удобная команда grid, которая имеет атрибут formatCells, Он берет формат из указанной ячейки и применяет его к указанному типу данных.

Пример использования можно найти здесь, а пример неправильного использования здесь.

Другие вопросы по тегам