如何使用 JasperReports 生成 HTML 报告流?

How to generate HTML report streams with JasperReports?

我正在使用 JasperReports 创建 PDF 报告,如下所示: JasperExportManager.exportReportToPdf(jasperPrint)

现在我还想生成一个 HTML 文本流。我怎样才能在不必将生成的文件写入本地磁盘的情况下实现这一点?

我想将生成的 html 作为电子邮件正文发送。

您可以使用 JRHtmlExporter 而不是 JasperExportManager。尝试这样的事情:

ByteArrayOutputStream baos = new ByteArrayOutputStream();

JRHtmlExporter exporter = new JRHtmlExporter();

exporter.setExporterInput(new SimpleExporterInput(yourJasperPrint));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(baos)); 

exporter.exportReport();

调用 exportReport 后,ByteArrayOutputStream 将包含您的 HTML。