jasper没有格式化excel数据类型

时间:2012-01-24 17:06:34

标签: java jasper-reports

我有一个Jasper报告,除了Excel之外,所有格式的导出似乎都很好。

下面的示例是一列,应该格式化为货币但显示不正确。

enter image description here

以下是我使用...

的碧玉属性
out = new FileOutputStream(file);
JExcelApiExporter exporterXLS = new JExcelApiExporter();

exporterXLS.setParameter(JRXlsExporterParameter.JASPER_PRINT, print);
exporterXLS.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE);
exporterXLS.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
exporterXLS.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
exporterXLS.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE);
exporterXLS.setParameter(JRXlsExporterParameter.CREATE_CUSTOM_PALETTE, Boolean.TRUE);
exporterXLS.setParameter(JRXlsExporterParameter.IS_COLLAPSE_ROW_SPAN, Boolean.FALSE);
exporterXLS.setParameter(JRXlsExporterParameter.IS_IGNORE_CELL_BORDER, Boolean.TRUE);
exporterXLS.setParameter(JRXlsExporterParameter.IS_IGNORE_GRAPHICS, Boolean.FALSE);
exporterXLS.setParameter(JRXlsExporterParameter.OUTPUT_STREAM, out);

exporterXLS.exportReport();

我已经尝试了Jasper 4.0和4.5。我认为这与依赖有关,但我不确定。

2 个答案:

答案 0 :(得分:2)

您可以尝试在jrxml文件中为net.sf.jasperreports.export.xls.pattern元素添加 textField 属性。

您可以找到示例here

答案 1 :(得分:2)

固定!

我没有使用JRXlsExporterParameter类,而是按照以下方式使用了参数,并且工作正常!

    jasperPrint.setProperty("net.sf.jasperreports.export.xls.create.custom.palette", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.one.page.per.sheet", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.remove.empty.space.between.rows", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.remove.empty.space.between.columns", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.white.page.background", "true");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.detect.cell.type", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.size.fix.enabled", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.ignore.graphics", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.collapse.row.span", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.ignore.cell.border", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.ignore.cell.background", "false");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.max.rows.per.sheet", "0");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.wrap.text", "true");
    jasperPrint.setProperty("net.sf.jasperreports.export.xls.use.timezone", "false");