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

Java中使用Apache POI讀取word文件簡單示例

 更新時間:2015年06月30日 09:50:17   投稿:junjie  
這篇文章主要介紹了Java中使用Apache POI讀取word文件簡單示例,本文著重介紹了一些必要條件,然后給出一個簡單讀取示例,需要的朋友可以參考下

Apache POI是Apache軟件基金會的開放源碼函式庫,POI提供API給Java程序?qū)icrosoft Office格式檔案讀和寫的功能。

1.讀取word 2003及word 2007需要的jar包

  讀取 2003 版本(.doc)的word文件相對來說比較簡單,只需要 poi-3.5-beta6-20090622.jar 和 poi-scratchpad-3.5-beta6-20090622.jar 兩個 jar 包即可, 而 2007 版本(.docx)就麻煩多,我說的這個麻煩不是我們寫代碼的時候麻煩,是要導(dǎo)入的 jar 包比較的多,有如下 7 個之多:
 1. openxml4j-bin-beta.jar
 2. poi-3.5-beta6-20090622.jar
 3. poi-ooxml-3.5-beta6-20090622.jar
 4 .dom4j-1.6.1.jar
 5. geronimo-stax-api_1.0_spec-1.0.jar
 6. ooxml-schemas-1.0.jar
 7. xmlbeans-2.3.0.jar
其中 4-7 是 poi-ooxml-3.5-beta6-20090622.jar 所依賴的 jar 包(在 poi-bin-3.5-beta6-20090622.tar.gz 中的 ooxml-lib 目錄下可以找到)。

2.換行符號

  硬換行:文件中換行,如果是鍵盤中使用了"enter"的換行。

  軟換行:文件中一行的字符數(shù)容量有限,當(dāng)字符數(shù)量超過一定值時,會自動切到下行顯示。

  對程序來說,硬換行才是可以識別的、確定的換行,軟換行與字體大小、縮進(jìn)有關(guān)。

3.讀取的注意事項(xiàng)

  值得注意的是: POI 在讀取不會讀取 word 文件中的圖片信息; 還有就是對于 2007 版的 word(.docx), 如果 word 文件中有表格,所有表格中的數(shù)據(jù)都會在讀取出來的字符串的最后。

4.讀取word文本內(nèi)容代碼

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

import org.apache.poi.POIXMLDocument;
import org.apache.poi.POIXMLTextExtractor;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.openxml4j.opc.OPCPackage;
import org.apache.poi.xwpf.extractor.XWPFWordExtractor;

public class Test {
  public static void main(String[] args) {
    try {
      InputStream is = new FileInputStream(new File("2003.doc"));
      WordExtractor ex = new WordExtractor(is);
      String text2003 = ex.getText();
      System.out.println(text2003);

      OPCPackage opcPackage = POIXMLDocument.openPackage("2007.docx");
      POIXMLTextExtractor extractor = new XWPFWordExtractor(opcPackage);
      String text2007 = extractor.getText();
      System.out.println(text2007);
      
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

相關(guān)文章

  • 通過url方式傳遞中文亂碼的解決方法

    通過url方式傳遞中文亂碼的解決方法

    本篇文章主要是對通過url方式傳遞中文亂碼的解決方法進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • Java實(shí)現(xiàn)簡易版猜燈謎游戲的示例代碼

    Java實(shí)現(xiàn)簡易版猜燈謎游戲的示例代碼

    燈謎是中秋節(jié)傳統(tǒng)的活動之一,而現(xiàn)代化的方式則是將其制作成一個小游戲,讓用戶在游戲的過程中猜燈謎,互動體驗(yàn)更佳,所以本文小編就用Java制作一款猜燈謎小游戲吧
    2023-09-09
  • 淺談java對象之間相互轉(zhuǎn)化的多種方式

    淺談java對象之間相互轉(zhuǎn)化的多種方式

    這篇文章主要介紹了淺談java對象之間相互轉(zhuǎn)化的多種方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • spring中WebClient如何設(shè)置連接超時時間以及讀取超時時間

    spring中WebClient如何設(shè)置連接超時時間以及讀取超時時間

    這篇文章主要給大家介紹了關(guān)于spring中WebClient如何設(shè)置連接超時時間以及讀取超時時間的相關(guān)資料,WebClient是Spring框架5.0引入的基于響應(yīng)式編程模型的HTTP客戶端,它提供一種簡便的方式來處理HTTP請求和響應(yīng),需要的朋友可以參考下
    2024-08-08
  • 電腦上安裝多個JDK版本時該如何自由切換(詳細(xì)圖文)

    電腦上安裝多個JDK版本時該如何自由切換(詳細(xì)圖文)

    我們在學(xué)習(xí)的過程中經(jīng)常用到不同的jdk版本,那么如何在一臺電腦上同時安裝多個jdk版本并進(jìn)行切換呢,這篇文章主要給大家介紹了關(guān)于電腦上安裝多個JDK版本時該如何自由切換的相關(guān)資料,需要的朋友可以參考下
    2023-10-10
  • Java 遞歸重難點(diǎn)分析詳解與練習(xí)

    Java 遞歸重難點(diǎn)分析詳解與練習(xí)

    一說起遞歸,我想每個人都不陌生。舉個從小就聽過的例子:從前有座山,山里有座廟,廟里有個和尚,和尚在講故事,從前有座山,山里有座廟,廟里有個和尚,和尚在講故事,從前有座山,要理解遞歸,就得先了解什么是遞歸,實(shí)際上這句話就是一個遞歸
    2021-11-11
  • Springbean的幾種注入方式都了解嗎

    Springbean的幾種注入方式都了解嗎

    這篇文章主要介紹了Springbean的幾種注入方式都了解嗎,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • 23種設(shè)計(jì)模式(17)java命令模式

    23種設(shè)計(jì)模式(17)java命令模式

    這篇文章主要為大家詳細(xì)介紹了23種設(shè)計(jì)模式之java命令模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • SpringBoot整合Apache?Pulsar教程示例

    SpringBoot整合Apache?Pulsar教程示例

    這篇文章主要為大家介紹了SpringBoot整合Apache?Pulsar教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • Java Character類對單個字符操作原理解析

    Java Character類對單個字符操作原理解析

    這篇文章主要介紹了Java Character類對單個字符操作原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03

最新評論