今天上午的目標單純使用 java 來讀取現有的 pdf file。

一開始興高采烈的使用 iTextPdfbox,這兩個 api 都是可以用來編寫 pdf,但是卻發現使用這兩個 api 對我來說,沒辦法馬上上手,現有的網頁都是在介紹如何讀取 pdf 的文字與創建 pdf file。

發現到,這與我的目的不同,之後找了另外兩種方式來開啟 pdf:

(一)使用Windowns本身具有的功能 rundll32:

 

if ((new File("c:\\Java-Interview.pdf")).exists()) 
{
   Process p = Runtime
   .getRuntime()
   .exec("rundll32 url.dll,FileProtocolHandler c:\\Java-Interview.pdf");
   p.waitFor();
}

(二)使用Java內建的Desktop類別:

 

if(Desktop.isDesktopSupported())
{   
  try{         
  File myFile =newFile("/path/to/file.pdf");
  Desktop.getDesktop().open(myFile);      
  }catch(IOException ex)
  {}
}
如果是打包成 jar,然後要讀取jar 中的pdf,就要換種方式讀取路徑,並且使用InputStream來操作,這又是另一段故事了。

可以參考以下的連結:

http://stackoverflow.com/questions/15654154/access-pdf-file-from-within-my-jar

arrow
arrow

    葛瑞斯肯 發表在 痞客邦 留言(0) 人氣()