欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java使用pdfbox操作pdf文件示例

 更新時(shí)間:2014年03月13日 16:45:59   作者:  
有時(shí)候PDF中的文字無(wú)法復(fù)制,這可能是因?yàn)镻DF文件加密了,不過(guò)使用PDFBox開(kāi)源軟件就可以把它讀出來(lái),下面是使用示例

還有一個(gè)用于創(chuàng)建PDF文件的項(xiàng)目----iText。

PDFBox下面有兩個(gè)子項(xiàng)目:FontBox是一個(gè)處理PDF字體的java類庫(kù);JempBox是一個(gè)處理XMP元數(shù)據(jù)的java類庫(kù)。

一個(gè)簡(jiǎn)單示例:

要引入pdfbox-app-1.6.0.jar這個(gè)包。

復(fù)制代碼 代碼如下:

package pdf;

import java.io.File;
import java.net.MalformedURLException;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.util.PDFTextStripper;

public class StripPDFContent {

    public static String getText(File file)throws Exception{
        boolean sort=false;
        int startPage=1;
        int endPage=10;
        PDDocument document=null;
        try{
            try{
                document=PDDocument.load(file);
            }catch(MalformedURLException e){

            }
            PDFTextStripper stripper=new PDFTextStripper();
            stripper.setSortByPosition(sort);
            stripper.setStartPage(startPage);
            stripper.setEndPage(endPage);
            return stripper.getText(document);
        }catch(Exception e){
            e.printStackTrace();
            return "";
        }finally{
            if(document!=null){
                document.close();
            }
        }
    }

    public static void main(String[] args){
        File file=new File("/home/orisun/123.pdf");
        try{
            String cont=getText(file);
            System.out.println(cont);
        }catch(Exception e){
            System.out.println("Strip failed.");
            e.printStackTrace();
        }
    }
}

相關(guān)文章

  • java中的BlockingQueue(阻塞隊(duì)列)解析

    java中的BlockingQueue(阻塞隊(duì)列)解析

    這篇文章主要介紹了java中的BlockingQueue阻塞隊(duì)列解析,阻塞隊(duì)列是一個(gè)支持兩個(gè)附加操作的隊(duì)列,這兩個(gè)附加的操作是,在隊(duì)列為空時(shí),獲取元素的線程會(huì)等待隊(duì)列變?yōu)榉强?需要的朋友可以參考下
    2023-12-12
  • springboot注入servlet的方法

    springboot注入servlet的方法

    本篇文章主要介紹了springboot注入servlet的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • MyBatis-Plus 樂(lè)觀鎖的具體實(shí)現(xiàn)

    MyBatis-Plus 樂(lè)觀鎖的具體實(shí)現(xiàn)

    MyBatis-Plus 的樂(lè)觀鎖通過(guò)簡(jiǎn)單的配置和注解,可以輕松實(shí)現(xiàn)高并發(fā)場(chǎng)景下的數(shù)據(jù)并發(fā)控制,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-09-09
  • Spring事件監(jiān)聽(tīng)器@EventListener與publishEvent的使用

    Spring事件監(jiān)聽(tīng)器@EventListener與publishEvent的使用

    Spring可以通過(guò)事件監(jiān)聽(tīng)器機(jī)制來(lái)處理應(yīng)用程序中的事件,本文主要介紹了Spring事件監(jiān)聽(tīng)器@EventListener與publishEvent的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • Spring中的注解@Value("#{}")與@Value("${}")的區(qū)別介紹

    Spring中的注解@Value("#{}")與@Value("${}")的區(qū)別

    這篇文章主要介紹了Spring中的注解@Value(“#{}“)與@Value(“${}“)的區(qū)別到底是什么,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • Java如何使用ReentrantLock實(shí)現(xiàn)長(zhǎng)輪詢

    Java如何使用ReentrantLock實(shí)現(xiàn)長(zhǎng)輪詢

    這篇文章主要介紹了如何使用ReentrantLock實(shí)現(xiàn)長(zhǎng)輪詢,對(duì)ReentrantLock感興趣的同學(xué),可以參考下
    2021-04-04
  • java讀取證書(shū)公鑰的實(shí)現(xiàn)

    java讀取證書(shū)公鑰的實(shí)現(xiàn)

    這篇文章主要介紹了java讀取證書(shū)公鑰的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • SpringCloud Edgware.SR3版本中Ribbon的timeout設(shè)置方法

    SpringCloud Edgware.SR3版本中Ribbon的timeout設(shè)置方法

    今天小編就為大家分享一篇關(guān)于SpringCloud Edgware.SR3版本中Ribbon的timeout設(shè)置方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • Spring?IOC?常用注解與使用實(shí)例詳解

    Spring?IOC?常用注解與使用實(shí)例詳解

    這篇文章主要介紹了Spring?IOC?常用注解與使用,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • SpringBoot中使用Thymeleaf模板詳情

    SpringBoot中使用Thymeleaf模板詳情

    這篇文章主要介紹了SpringBoot中使用Thymeleaf模板詳情,hymeleaf是適用于Web和獨(dú)立環(huán)境的現(xiàn)代服務(wù)器端Java模板引擎,能夠處理HTML,XML,JavaScript,CSS甚至純文本,下文更多相關(guān)資料介紹需要的小伙伴可以參考一下
    2022-04-04

最新評(píng)論