我正在使用jasper report 6.0和jsp / servlets从数据库中获取一些报告,你知道,一切顺利,servlet捕获请求并实现文件扩展导出,然后给出response.getOutputStream()将JasperExportManager作为outputStream发送到客户端,但问题是导出pdf文件,报告的语言是波斯语,甚至我已经将所有字符编码设置为UTF-8但是有导出的pdf文件中仍然没有任何波斯字符,所有其他格式的文件都可以,除了pdf,这是我的代码:
Class.forName("com.mysql.jdbc.Driver");
Connection cn = DriverManager.getConnection("jdbc:mysql://localhost:3306 /Informations?useUnicode=true&characterEncoding=UTF-8&user=root&password=");
JasperDesign jasperDesign = JRXmlLoader.load("C:\\TempReports\\discountgivenstudents.jrxml");
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
Map <String, Object> parameters = new HashMap<String, Object>();
parameters.put("discount",10);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameters, cn);
response.setContentType("application/ms-excel");
response.setHeader("Expires:", "0");
response.setHeader("Content-Disposition", "attachment; filename=discountgiven.pdf");
JasperExportManager.exportReportToPdfStream(jasperPrint, response.getOutputStream());
response.getOutputStream().flush();
如果你能帮我解决这个问题,我会很高兴,非常感谢你付出的时间。