我正在使用 JasperReports 和 DynamicReports 和这段 java 代码来创建包含 utf-8 字符的 pdf 格式的报告,问题是生成的 pdf 文件根本不包含 utf-8 字符,就像它们已被替换为“ ”。使用 OutputStream 创建 utf-8 文件时有什么需要注意的吗?
public void toPdf(String path){
OutputStream outHtml;
try {
outHtml = new FileOutputStream(path);
jasperBuilder.toPdf(outHtml);
} catch (Exception e1) {
logger.error("failed to create PDF", e1);
}
}
值得注意的是,创建 XLS 和 HTML 文件不会遇到这样的问题。
请注意,jasperBuilder.toPdf(outHtml);
我已经跟踪了很多代码行,并且在这些行中我的 utf-8 字符没有被消除。所以我猜魔鬼在里面outHtml = new FileOutputStream(path);