首页 > 解决方案 > 当我做 Jasper 报告时,我的服务器中的字符错误

问题描述

我有一个 Windows Server,我在其中运行我的 Tomcat 和一些应用程序,其中之一是 Jasper,我在其中生成我的 Jasper 报告。当我从批处理 java 进程中导出报告时,该报告的字符错误,例如它们不是 UTF-8。我不知道,我在 Jasper 中设置了 UTF-8 编码。

Files.write(Paths.get(informeModificacionesUnificado), Charset.forName("windows-1252").encode(
                        StandardCharsets.UTF_8.decode(ByteBuffer.wrap(Files.readAllBytes(Paths.get(informeModificacionesUnificado)))))
                        .array());

我也用 Java 设置了这段代码。

标签: jasper-reports

解决方案


根据提供的信息和我的经验,问题可能在于您的 JRE/JDK 导入的字体类型/构面,或者您在 jasper 中使用了不合适的字体类型。某些字体类型不能用于打印具有特殊字符(例如 ű ú ó)的文本。尝试在 jasper studio 中使用 DejaVu Sans 进行调试,它可能会帮助您调试。


推荐阅读