
W niektórych przypadkach może być konieczne wyodrębnienie tekstu z dokumentów programu Word do różnych celów. Jako programista Java możesz łatwo programowo wyodrębnić tekst z plików DOC lub DOCX. W tym artykule dowiesz się, jak wyodrębnić tekst z dokumentów programu Word przy użyciu języka Java.
W tym artykule omówiono/omówiono następujące tematy:
- API Java do wyodrębniania tekstu z dokumentów programu Word
- Wyodrębnij tekst z dokumentów programu Word przy użyciu języka Java
- Wyodrębnij tekst z określonych stron dokumentu programu Word za pomocą języka Java
- Uzyskaj wyróżnienie z dokumentów programu Word przy użyciu języka Java
- Wyodrębnij sformatowany tekst z DOCX za pomocą Java
- Wyodrębnij tekst według spisu treści za pomocą języka Java
API Java do wyodrębniania tekstu z dokumentów programu Word
Do wyodrębnienia tekstu z plików DOC lub DOCX wykorzystamy API GroupDocs.Parser for Java. Umożliwia wyodrębnianie tekstu, metadanych i obrazów z popularnych formatów plików Word, PDF, Excel i PowerPoint. Obsługuje także wyodrębnianie tekstu surowego, sformatowanego i strukturalnego z plików obsługiwanych formatów.
Możesz pobrać plik JAR interfejsu API lub po prostu dodać następującą konfigurację pom.xml do swojej aplikacji Java opartej na Maven, aby wypróbować poniższe przykłady kodu.
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>21.2</version>
</dependency>
Wyodrębnij tekst z dokumentów programu Word przy użyciu języka Java
Możesz analizować dowolny dokument programu Word i wyodrębniać tekst, wykonując proste kroki wymienione poniżej:
- Najpierw załaduj plik DOCX przy użyciu klasy Parser.
- Następnie wywołaj metodę Parser.getText(), aby wyodrębnić tekst z załadowanego dokumentu.
- Uzyskaj wyniki metody Parser.getText() w obiekcie klasy TextReader.
- Na koniec wywołaj metodę TextReader.readToEnd() , aby odczytać wszystkie znaki od bieżącej pozycji do końca czytnika tekstu i zwrócić je jako jeden ciąg.
Poniższy przykładowy kod pokazuje, jak wyodrębnić tekst z pliku DOCX przy użyciu języka Java.
// Utwórz instancję klasy Parser
Parser parser = new Parser("C:\\Files\\sample.docx");
// Wyodrębnij surowy tekst do czytnika
try (TextReader reader = parser.getText()) {
// Wydrukuj tekst z dokumentu
// Jeśli wyodrębnianie tekstu nie jest obsługiwane, czytnik ma wartość null
System.out.println(reader == null ? "Text extraction isn't supported" : reader.readToEnd());
}

Wyodrębnij tekst z dokumentów programu Word przy użyciu języka Java
Wyodrębnij tekst z określonych stron dokumentu programu Word za pomocą języka Java
Możesz analizować dokument programu Word i wyodrębniać tekst z określonej strony, wykonując proste kroki wymienione poniżej:
- Najpierw załaduj plik DOCX przy użyciu klasy Parser.
- Następnie użyj Parser.getFeatures().isText(), aby sprawdzić, czy dokument obsługuje funkcję wyodrębniania tekstu. Przeczytaj więcej o obsługiwanych funkcjach.
- Teraz wywołaj metodę Parser.getDocumentInfo(), aby uzyskać ogólne informacje o dokumencie. Takie jak typ pliku, liczba stron, rozmiar itp.
- Uzyskaj wyniki metody Parser.getDocumentInfo() w obiekcie interfejsu IDocumentInfo.
- Następnie sprawdź, czy IDocumentInfo.getPageCount() nie wynosi zero. Ta metoda zwraca całkowitą liczbę stron dokumentu.
- Wykonaj iterację po wszystkich stronach i wywołaj metodę Parser.getText() dla każdego indeksu strony, aby wyodrębnić tekst i uzyskać wyniki w obiekcie klasy TextReader.
- Na koniec pokaż wyniki, wywołując metodę TextReader.readToEnd() w celu odczytania wyodrębnionego tekstu.
Poniższy przykładowy kod pokazuje, jak wyodrębnić tekst ze stron jedna po drugiej przy użyciu języka Java.
// Utwórz instancję klasy Parser
Parser parser = new Parser("C:\\Files\\sample.docx");
// Sprawdź, czy dokument obsługuje wyodrębnianie tekstu
if (!parser.getFeatures().isText()) {
System.out.println("The document doesn't support text extraction.");
return;
}
// Uzyskaj informacje o dokumencie
IDocumentInfo documentInfo = parser.getDocumentInfo();
// Sprawdź, czy dokument ma strony
if (documentInfo.getPageCount() == 0) {
System.out.println("The document has zero pages.");
return;
}
// Iteruj po stronach
for (int p = 0; p < documentInfo.getPageCount(); p++) {
// Wydrukuj numer strony
System.out.println(String.format("Page number: %d/%d", p + 1, documentInfo.getPageCount()));
// Wyodrębnij tekst do czytnika
try (TextReader reader = parser.getText(p)) {
// Wydrukuj tekst z dokumentu
// Ignorujemy sprawdzanie wartości null, ponieważ wcześniej sprawdziliśmy obsługę funkcji wyodrębniania tekstu
System.out.println(reader.readToEnd());
}
}

Wyodrębnij tekst z określonych stron dokumentu za pomocą języka Java
Uzyskaj wyróżnienie z dokumentów programu Word przy użyciu języka Java
Wyróżnienie to część tekstu, która zwykle służy do wyjaśnienia kontekstu znalezionego tekstu w funkcji wyszukiwania. Możesz wyodrębnić zaznaczenie z dokumentu, wykonując proste kroki wymienione poniżej:
- Najpierw załaduj plik DOCX przy użyciu klasy Parser.
- Utwórz instancję obiektu klasy HighlightOptions i przekaż maksymalną długość jako parametr wejściowy do jego konstruktora, aby wyodrębnić podświetlenie o stałej długości.
- Następnie wywołaj metodę Parser.getHighlight() z pozycją początkową i obiektem klasy HighlightOptions, aby wyodrębnić podświetlenie z dokumentu jako obiekt klasy HighlightItem.
- Na koniec wywołaj metody Highlight.getPosition() i HighlightItem.getText(), aby uzyskać położenie i tekst podświetlenia.
Poniższy przykładowy kod pokazuje, jak wyodrębnić wyróżnienie z dokumentu przy użyciu języka Java.
// Utwórz instancję klasy Parser
try (Parser parser = new Parser("C:\\Files\\sample.docx")) {
// Wyodrębnij najważniejsze wydarzenie:
HighlightItem hl = parser.getHighlight(0, true, new HighlightOptions(8));
// Sprawdź, czy obsługiwane jest wyodrębnianie podświetlenia
if (hl == null) {
System.out.println("Highlight extraction isn't supported");
return;
}
// Wydrukuj wyodrębnione wyróżnienie
System.out.println(String.format("At %d: %s", hl.getPosition(), hl.getText()));
}
At 0: Overview
Wyodrębnij sformatowany tekst z DOCX za pomocą Java
Możesz analizować dokumenty programu Word i wyodrębniać tekst bez utraty formatowania stylu, wykonując proste kroki wymienione poniżej:
- Najpierw załaduj plik DOCX przy użyciu klasy Parser.
- Zdefiniuj FormattedTextOptions i ustaw FormattedTextMode na HTML. Umożliwia wyodrębnienie tekstu w formacie HTML z dokumentu.
- Następnie wywołaj metodę Parser.getFormattedText(), aby wyodrębnić sformatowany tekst.
- Uzyskaj wyniki metody Parser.getText() w obiekcie klasy TextReader.
- Na koniec wywołaj metodę TextReader.readToEnd(), aby przeczytać cały tekst.
Poniższy przykładowy kod pokazuje, jak wyodrębnić sformatowany tekst z pliku DOCX przy użyciu języka Java.
// Utwórz instancję klasy Parser
try (Parser parser = new Parser("C:\\Files\\sample.docx")) {
// Wyodrębnij sformatowany tekst do czytnika
try (TextReader reader = parser.getFormattedText(new FormattedTextOptions(FormattedTextMode.Html))) {
// Wydrukuj sformatowany tekst z dokumentu
// Jeśli wyodrębnianie sformatowanego tekstu nie jest obsługiwane, czytnik ma wartość null
System.out.println(reader == null ? "Formatted text extraction isn't suppported" : reader.readToEnd());
}
}

Wyodrębnij sformatowany tekst z DOCX za pomocą Java
Wyodrębnij tekst według spisu treści za pomocą języka Java
Możesz wyodrębnić tekst z dokumentu według spisu treści, wykonując proste kroki wymienione poniżej:
- Najpierw załaduj plik DOCX przy użyciu klasy Parser.
- Następnie wywołaj metodę Parser.getToc(), aby wyodrębnić spis treści w postaci kolekcji obiektów klasy TocItem. TocItem reprezentuje element używany w funkcji wyodrębniania spisu treści.
- Teraz sprawdź, czy kolekcja nie ma wartości null.
- Następnie wykonaj iterację po kolekcji TocItem i wywołaj metodę TocItem.extractText(), aby wyodrębnić tekst z dokumentu, do którego odnosi się obiekt TocItem.
- Uzyskaj wyniki w obiekcie klasy TextReader.
- Na koniec wywołaj metodę TextReader.readToEnd(), aby przeczytać cały tekst.
Poniższy przykładowy kod pokazuje, jak wyodrębnić tekst według spisu treści z dokumentów programu Word przy użyciu języka Java.
// Utwórz instancję klasy Parser
try (Parser parser = new Parser("C:\\Files\\sampleTOC.docx")) {
// Pobierz spis treści
Iterable<TocItem> tocItems = parser.getToc();
// Sprawdź, czy obsługiwane jest wyodrębnianie toc
if (tocItems == null) {
System.out.println("Table of contents extraction isn't supported");
}
else
{
// Iteruj po elementach
for (TocItem tocItem : tocItems) {
// Wydrukuj tekst rozdziału
try (TextReader reader = tocItem.extractText()) {
System.out.println("----");
System.out.println(reader.readToEnd());
}
}
}
}

Wyodrębnij tekst według spisu treści za pomocą języka Java
Zdobądź bezpłatną licencję
Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.
Wniosek
W tym artykule nauczyłeś się wyodrębniać tekst z dokumentów programu Word przy użyciu języka Java. Co więcej, widziałeś, jak programowo wyodrębnić sformatowany tekst z pliku DOCX. W tym artykule wyjaśniono również, jak wyodrębnić tekst na podstawie spisu treści i wyodrębnić najważniejsze informacje z dokumentu. Poza tym możesz dowiedzieć się więcej o GroupDocs.Parser for Java API, korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.