<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    java技術研究

    統計

    留言簿(3)

    閱讀排行榜

    評論排行榜

    (轉)Java操作PDF文件(iText)

    (轉)Java操作PDF文件(iText)
    2009-03-12 01:33:18
    標簽:PDF Java 休閑 iText 文件
    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://xiaoduan.blog.51cto.com/502137/137930
    上次我們用jacob來操作Microsoft Word,今天我們來操作PDF文檔。
    雖然jacob中也有關于PDF的方法,但是過于復雜。iText是一個開源的PDF工具,小巧而又便捷。
    官方網站是:http://www.lowagie.com/iText/
    官方的解釋:iText is a library that allows you to generate PDF files . the fly
    最新版本為:2.1.5
    下載地址是:http://nchc.dl.sourceforge.net/sourceforge/itext/iText-2.1.5.jar
     
    我的開發環境: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     快去看看吧
    Snap2
     
    進入C盤根目錄,發現生成的HelloWorld.pdf文件,打開文件,看看內容是否正確。
    Snap4
    Snap5
     
    Java操作PDF文件測試成功。但是現在我們項目沒有任何實際意義。所以我們要添加數據庫。
    數據庫為Oracle10g,用戶名sys1,密碼abc,表:emp
    Snap6
     
    表中數據很多,我在這里就不一一列舉了。
    Snap7
     
    新建一個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     快去看看吧
    Snap8
     
    進入C盤根目錄,發現生成了DB.pdf文件,打開看看內容是否正確。
    Snap9
    Snap10
     
    成功!這是Java利用iText操作PDF文件,下次我們用另外一個工具BFO,呵呵,不是UFO。

    本文出自 “小段” 博客,請務必保留此出處http://xiaoduan.blog.51cto.com/502137/137930

    posted on 2012-06-30 18:02 小秦 閱讀(382) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 菠萝菠萝蜜在线免费视频| 免费国产黄网站在线观看| 永久免费毛片在线播放| 亚洲午夜电影一区二区三区| 最近免费中文字幕大全免费 | 日本免费一区二区三区最新| 色老板亚洲视频免在线观| 一级毛片视频免费观看| 免费在线观看亚洲| 日本高清不卡中文字幕免费| 国产日韩成人亚洲丁香婷婷| a毛片免费全部播放完整成| 日本亚洲欧洲免费天堂午夜看片女人员 | 亚洲成年人在线观看| 日本免费中文视频| 亚洲综合一区二区精品久久| 亚洲黄色免费电影| 亚洲热线99精品视频| 亚洲日韩AV无码一区二区三区人| 三年片在线观看免费大全| 亚洲码欧美码一区二区三区| 四虎亚洲国产成人久久精品| 久久综合亚洲色HEZYO社区| 日韩在线观看免费完整版视频| 成年女人毛片免费视频| 亚洲视频免费观看| 成年轻人网站色免费看| 免费一级特黄特色大片| 久久精品亚洲综合专区| 成人午夜免费福利| 精品人妻系列无码人妻免费视频| 免费看一级做a爰片久久| 国产精品久久亚洲不卡动漫| 日本免费人成黄页在线观看视频| 国产无限免费观看黄网站| 亚洲美女免费视频| 国产国产成年年人免费看片| 亚洲欧美日韩中文字幕一区二区三区 | 国产在线观看无码免费视频| 亚洲福利电影一区二区?| 国产jizzjizz视频全部免费|