LoginSignup
3

More than 3 years have passed since last update.

PDFテキストコンテンツを抽出するJava

Posted at

日常の作業では、巨大なPDFドキュメントに含まれているテキストコンテンツを抽出する必要がある場合があります。そして、Free Spire.PDF for Javaは、便利で高速なテキスト抽出方法を提供します、次に、プロセスで使用されるJavaコードを紹介します。

基本的な手順:
1. Free Spire.PDF for Javaパッケージをダウンロードして解凍します。
2. libフォルダーのSpire.Pdf.jarパッケージを依存関係としてJavaアプリケーションにインポートするか、MavenリポジトリーからJARパッケージをインストールします(pom.xmlファイルを構成するコードについては、以下を参照してください)。
3. Javaアプリケーションで、新しいJava Class(ここではExtractTextという名前)を作成し、対応するJavaコードを入力して実行します。

pom.xmlファイルを構成します:

<repositories>
   <repository>
      <id>com.e-iceblue</id>
      <name>e-iceblue</name>
      <url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
   </repository>
</repositories>
<dependencies>
   <dependency>
      <groupId>e-iceblue</groupId>
      <artifactId>spire.pdf.free</artifactId>
      <version>2.6.3</version>
   </dependency>
</dependencies>

PDFソースドキュメントは次のとおりです:
sample.jpg

Javaコード:


import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import java.io.*;

public class ExtractText {

    public static void main(String[] args) {

        //PdfDocumentインスタンスを作成する
        PdfDocument doc = new PdfDocument();
        //PDFファイルをロード
        doc.loadFromFile("雪.pdf");

        //StringBuilderインスタンスを作成する
        StringBuilder sb = new StringBuilder();

        PdfPageBase page;
        //PDFページをトラバースし、各ページのテキストを取得して、StringBuilderオブジェクトに追加します
        for(int i= 0;i<doc.getPages().getCount();i++){
            page = doc.getPages().get(i);
            sb.append(page.extractText(true));
        }
        FileWriter writer;
        try {
            //StringBuilderオブジェクトのテキストをテキストファイルに書き込みます
            writer = new FileWriter("ExtractText.txt");
            writer.write(sb.toString());
            writer.flush();
        } catch (IOException e) {
            e.printStackTrace();
        }

        doc.close();
    }
}

結果を抽出する:
text.jpg

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3