请问JAVA中如何生成PDF文件 用jfreereport,或jasperreport以上两个都是开源免费的报表工具。也可以用iText包自己写。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 JSP中?iText是一个开放源码的Java类库,可以用来方便地生成PDF文件。大家通过访问http://sourceforge.net/project/showfiles.php?group_id=15255&release_id=167948下载最新版本的类库,下载完成之后会得到一个.jar包,把这个包加入JDK的classpath即可使用。如果生成的PDF文件中需要出现中文、日文、韩文字符,则还需要通过访问http://itext.sourceforge.net/downloads/iTextAsian.jar下载iTextAsian.jar包。将PDF文件通过流的形式输送到客户端的缓存。这样做的好处是不会在服务器上留下任何“遗迹”。i)直接通过JSP页面生成<%@ page import="java.io.*,java.awt.Color,com.lowagie.text.*,com.lowagie.text.pdf.*"%><% response.setContentType( "application/pdf" ); Document document = new Document(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); PdfWriter writer=PdfWriter.getInstance( document, buffer ); document.open(); document.add(new Paragraph("Hello World")); document.close(); DataOutput output = new DataOutputStream( response.getOutputStream()); byte[] bytes = buffer.toByteArray(); response.setContentLength(bytes.length); for( int i = 0; i < bytes.length; i++ ) { output.writeByte( bytes[i] ); }%> ii£©Í¨¹ýServletÉú³Éimport java.io.*;import javax.servlet.*;import javax.servlet.http.*;import com.lowagie.text.*;import com.lowagie.text.pdf.*;public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException{ Document document = new Document(PageSize.A4, 36,36,36,36); ByteArrayOutputStream ba = new ByteArrayOutputStream(); try { PdfWriter writer = PdfWriter.getInstance(document, ba); document.open(); document.add(new Paragraph("Hello World")); }catch(DocumentException de) { de.printStackTrace(); System.err.println("A Document error:" +de.getMessage()); } document.close(); response.setContentType("application/pdf"); response.setContentLength(ba.size()); ServletOutputStream out = response.getOutputStream(); ba.writeTo(out); out.flush(); }这是以前收集的一个例子,出处不太记得了,哈,希望对你有帮助 ii£©Í¨¹ýServletÉú³É哈,乱码,本意是说用Servlet的 iTextAsian.jar包要放在哪个目录下? 可以看看http://www.lowagie.com/iText/docs.html,在它给的最简单的例子的基础上加上表格的部分就可以了。 请问struts2.1.6最少要几个jar包? Struts2中的tree标签问题 js动画和画图问题 FirstJsp 出现问题 在线等 有关Remote 360°雪地跪求tc4ntiis.zip ssh ajax传参问题 使用jxl向excel中插入图片 关于Java-SDK“中文”文档的问题,请您一定来支持一下 JBULDER中的MODULE方面的问题? 实体bean只能对单个数据表进行操作? [请教]接触Struts不久,我这样的结构算不算三层结构
iText是一个开放源码的Java类库,可以用来方便地生成PDF文件。大家通过访问http://sourceforge.net/project/showfiles.php?group_id=15255&release_id=167948下载最新版本的类库,下载完成之后会得到一个.jar包,把这个包加入JDK的classpath即可使用。如果生成的PDF文件中需要出现中文、日文、韩文字符,则还需要通过访问http://itext.sourceforge.net/downloads/iTextAsian.jar下载iTextAsian.jar包。
将PDF文件通过流的形式输送到客户端的缓存。这样做的好处是不会在服务器上留下任何“遗迹”。
i)直接通过JSP页面生成
<%@ page import="java.io.*,java.awt.Color,com.lowagie.text.*,com.lowagie.text.pdf.*"%>
<%
response.setContentType( "application/pdf" );
Document document = new Document();
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
PdfWriter writer=PdfWriter.getInstance( document, buffer );
document.open();
document.add(new Paragraph("Hello World"));
document.close();
DataOutput output = new DataOutputStream( response.getOutputStream());
byte[] bytes = buffer.toByteArray();
response.setContentLength(bytes.length);
for( int i = 0; i < bytes.length; i++ ) {
output.writeByte( bytes[i] );
}
%>
import javax.servlet.*;
import javax.servlet.http.*;
import com.lowagie.text.*;
import com.lowagie.text.pdf.*;
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException,ServletException{
Document document = new Document(PageSize.A4, 36,36,36,36);
ByteArrayOutputStream ba = new ByteArrayOutputStream();
try {
PdfWriter writer = PdfWriter.getInstance(document, ba);
document.open();
document.add(new Paragraph("Hello World"));
}catch(DocumentException de) {
de.printStackTrace();
System.err.println("A Document error:" +de.getMessage());
}
document.close();
response.setContentType("application/pdf");
response.setContentLength(ba.size());
ServletOutputStream out = response.getOutputStream();
ba.writeTo(out);
out.flush();
}这是以前收集的一个例子,出处不太记得了,哈,希望对你有帮助
哈,乱码,本意是说用Servlet的