java itext_Java操作PDF文件(iText) | 学步园

本文介绍了如何使用Java的iText库生成和操作PDF文件。通过示例代码展示了如何创建PDF,添加内容,以及从数据库读取数据并写入PDF。
摘要由CSDN通过智能技术生成

版权声明:

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处

、作者信息和本声明。否则将追究法律责任。http://xiaoduan.blog.51cto.com/502137/137930

上次我们用jacob来操作Microsoft Word,今天我们来操作PDF文档。

虽然jacob中也有关于PDF的方法,但是过于复杂。iText是一个开源的PDF工具,小巧而又便捷。

官方的解释:iText is a library that allows you to generate PDF files . the fly

最新版本为:2.1.5

我的开发环境:JDK1.6+MyEclipse7+Tomcat5.5.27

首先在MyEclipse中新建一个项目,名称为iText。

新建一个Class(类)HelloWorld.java ,Package(包)为com.test ,代码如下:

package com.test;

import java.io.FileOutputStream;

import java.io.IOException;

import com.lowagie.text.Document;

import com.lowagie.text.DocumentException;

import com.lowagie.text.Paragraph;

import com.lowagie.text.pdf.PdfWriter;

public class HelloWorld {

/**

* 生成一个简单的PDF文件:HelloWorld.pdf

*

* 作者:小段

*/

public static void main(String[] args) {

System.out.println("Hello World");

//第一步:创建一个document对象。

Document document = new Document();

try {

// 第二步:

// 创建一个PdfWriter实例,

// 将文件输出流指向一个文件。

PdfWriter.getInstance(document,new FileOutputStream("C://HelloWorld.pdf"));

// 第三步:打开文档。

document.open();

// 第四步:在文档中增加一个段落。

document.add(new Paragraph("Hello World"+","+"Hello iText"+","+"Hello xDuan"));

} catch (DocumentException de) {

System.err.println(de.getMessage());

} catch (IOException ioe) {

System.err.println(ioe.getMessage());

}

// 第五步:关闭文档。

document.close();

// 检验程序是否正常运行到这里。

System.out.println("快去看看吧");

}

}

运行后,控制台输出语句:Hello World     快去看看吧

502137_1236792772Zogm.png

进入C盘根目录,发现生成的HelloWorld.pdf文件,打开文件,看看内容是否正确。

502137_1236792775C609.png

502137_12367927782nAz.png

Java操作PDF文件测试成功。但是现在我们项目没有任何实际意义。所以我们要添加数据库。

数据库为Oracle10g,用户名sys1,密码abc,表:emp

502137_123679277988R3.png

表中数据很多,我在这里就不一一列举了。

502137_1236792780a3gE.png

新建一个Class(类)DB.java ,代码如下:

package com.test;

import java.io.FileOutputStream;

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

import com.lowagie.text.Anchor;

import com.lowagie.text.Chunk;

import com.lowagie.text.Document;

import com.lowagie.text.DocumentException;

import com.lowagie.text.Paragraph;

import com.lowagie.text.html.HtmlWriter;

import com.lowagie.text.pdf.PdfWriter;

public class DB {

/**

* 利用iText,将数据库表中的数据写入PDF文件中。

*

* 作者:小段

*/

public static void main(String[] args) throws Exception{

System.out.println("Hello Oracle");

// 第一步:创建一个document对象。

Document document = new Document();

try {

// 第二步:

// 创建一个PdfWriter实例,

// 将文件输出流指向一个文件。

PdfWriter pdf = PdfWriter.getInstance(document,new FileOutputStream("C://DB.pdf"));

// 第三步:打开文档。

document.open();

// 第四步:创建数据库连接 。

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "sys1", "abc");

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("select * from emp");

while(rs.next()){ //循环取得所有数据

String s="";

for(int i=1;i<=8;i++){

s+=rs.getObject(i)==null?"":rs.getObject(i).toString()+"/t";

}

document.add(new Paragraph(s));

}

document.add(new Paragraph("Hello World"+" fdgdsf "+"Hello xDuan"));

} catch (DocumentException de) {

System.err.println(de.getMessage());

} catch (IOException ioe) {

System.err.println(ioe.getMessage());

}

// 第五步:关闭文档。

document.close();

System.out.println("快去看看吧");

}

}

运行后,控制台显示信息:Hello Oracle     快去看看吧

502137_1236792781xDQK.png

进入C盘根目录,发现生成了DB.pdf文件,打开看看内容是否正确。

502137_12367927876o34.png

502137_12367927978JvU.png

成功!这是Java利用iText操作PDF文件,下次我们用另外一个工具BFO,呵呵,不是UFO。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值