
Java to niezwykle popularny język komputerowy służący do automatyzacji tworzenia i manipulacji dokumentami Microsoft Word (DOC, DOCX). Jako programista Java możesz pisać kod umożliwiający programowe tworzenie, modyfikowanie i zapisywanie dokumentów programu Word przy użyciu różnych bibliotek Java. Może to zaoszczędzić czas i wysiłek podczas wykonywania operacji takich jak raportowanie, tworzenie faktur lub przetwarzanie dużych ilości danych. Co więcej, ze względu na niezależność od platformy, Java jest realną alternatywą do automatyzacji dokumentów w różnych systemach operacyjnych. W tym artykule wyjaśnimy, jak tworzyć i uzyskiwać pola formularzy z dokumentów programu Word za pomocą języka Java.
W tym artykule zostaną omówione następujące punkty:
- Instalowanie biblioteki Java Word Automation
- Twórz pola formularzy w dokumentach programu Word za pomocą języka Java
- Uzyskaj pola formularza z dokumentów programu Word przy użyciu języka Java
Biblioteka Java Word Automation - instalacja
Będziemy używać Conholdate.Total for Java do automatyzacji dokumentów MS Word. Procedura instalacji tej biblioteki automatyzacji Java Word jest dość łatwa. Użytkownicy Mavena mogą po prostu dołączyć następujące konfiguracje do pliku pom.xml swoich projektów.
<repository>
<id>ConholdateJavaAPI</id>
<name>Conholdate Java API</name>
<url>https://releases.conholdate.com/java/repo</url>
</repository>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>23.2</version>
<type>pom</type>
</dependency>
Następnie wykonaj następujące polecenia.
mvn clean
mvn install -U
Aby skonfigurować inne frameworki Java, odwiedź stronę releases.conholdate.com.
Automatyzacja Java Word: Wstawianie pól formularzy w dokumentach Word
Formularz to dokument zawierający puste pola (pola) do wypełnienia. Za pomocą programu Microsoft Word możesz zaprojektować formularz rejestracyjny z rozwijanymi listami, z których użytkownicy będą mogli wybierać wpisy. Pole Formularz służy do przechowywania określonych typów danych, takich jak imię i nazwisko lub adres. Wprowadzanie tekstu, pola kombi i pola wyboru to przykłady pól formularzy w programie Microsoft Word. W kolejnych podrozdziałach wyjaśnimy, jak wstawiać pola formularzy w dokumentach Worda przy użyciu języka Java.
Utwórz pole tekstu wejściowego w dokumencie programu Word za pomocą języka Java
W tym podrozdziale dowiesz się, jak utworzyć wejściowe pole tekstowe w dokumencie programu Word (DOC/DOCX) przy użyciu języka Java. Proszę postępować według kroków podanych poniżej:
- Najpierw utwórz obiekt klasy Document.
- Następnie utwórz obiekt klasy DocumentBuilder i zainicjuj go obiektem Document.
- Następnie dodaj pole do wprowadzania tekstu, korzystając z metody DocumentBuilder.insertTextInput.
- Na koniec zapisz dokument.
Poniższy przykład kodu demonstruje, jak wstawić wejściowe pole tekstowe do dokumentu programu Word przy użyciu języka Java.
// Utwórz dokument
Document doc = new Document();
// Zainicjuj narzędzie do tworzenia dokumentów
DocumentBuilder builder = new DocumentBuilder(doc);
// Dodaj wprowadzany tekst
builder.insertTextInput("TextInput", TextFormFieldType.REGULAR, "", "Enter your name here", 30);
// Zapisz wynikowy dokument
doc.save("output.docx");
Wynikowy dokument programu Word wyświetli utworzone pole wprowadzania tekstu jak na poniższym zrzucie ekranu.

Dodaj listę rozwijaną w dokumencie programu Word przy użyciu języka Java
W tej podsekcji wyjaśniono, jak utworzyć listę rozwijaną w programie Word (DOC/DOCX) w Javie.
Kroki są następujące:
- Najpierw zainicjuj obiekt klasy Document.
- Następnie utwórz instancję obiektu klasy obiektu DocumentBuilder.
- Po trzecie, wstaw pole rozwijane za pomocą metody DocumentBuilder.insertComboBox.
- Na koniec zapisz dokument.
Poniższy przykład kodu demonstruje, jak dodać listę rozwijaną w dokumentach programu Word przy użyciu języka Java.
// Utwórz dokument
Document doc = new Document();
// Zainicjuj narzędzie do tworzenia dokumentów
DocumentBuilder builder = new DocumentBuilder(doc);
// Dodaj listę rozwijaną
String[] items = { "– Select your favorite footwear –", "Sneakers", "Oxfords", "Flip-flops", "Other" };
builder.insertComboBox("DropDown", items, 0);
// Zapisz wynikowy dokument
doc.save("output.docx");
Dane wyjściowe zostaną pokazane na poniższym zrzucie ekranu.

Wstaw pole wyboru w słowie Java
Tutaj dowiesz się, jak dodawać pola wyboru w dokumentach programu Word przy użyciu języka Java.
Proszę napisać kod zgodnie z krokami podanymi poniżej:
- Najpierw utwórz obiekt klasy Document.
- Następnie utwórz obiekt DocumentBuilder i zainicjuj go obiektem Document.
- Następnie utwórz pole wyboru przy użyciu metody DocumentBuilder.insertCheckBox.
- Na koniec zapisz dokument.
Poniższy przykład kodu demonstruje, jak utworzyć pole wyboru w dokumentach programu Word przy użyciu języka Java.
// Utwórz dokument
Document doc = new Document();
// Zainicjuj narzędzie do tworzenia dokumentów
DocumentBuilder builder = new DocumentBuilder(doc);
// Dodaj pole wyboru
builder.insertCheckBox("CheckBox", true, true, 0);
// Zapisz wynikowy dokument
doc.save("output.docx");
Uzyskiwanie pól formularzy z dokumentów programu Word za pomocą biblioteki Java Word Automation
Jak dotąd nauczyłeś się dodawać różne pola formularzy w dokumencie programu Word za pomocą języka Java. W tej sekcji wyjaśnimy, jak uzyskać pola formularza pliku Word za pomocą języka Java.
Załóżmy, że mamy plik zawierający 4 pola formularza. Dowiedzmy się, jak uzyskać kolekcję pól i jak uzyskać pola według ich nazwy lub indeksu. Postępuj zgodnie z instrukcją krok po kroku podaną poniżej:
- Najpierw załaduj dokument Word przy użyciu klasy Document.
Document doc = new Document("FormFields.doc");
- Pozyskaj obiekt klasy FormFieldCollection, który można pobrać za pomocą metody Range.getFormFields.
FormFieldCollection formFields = doc.getRange().getFormFields();
- Aby uzyskać dane pole według jego indeksu, możesz pobrać obiekt klasy FormField, używając metody get(int indeks) klasy FormFieldCollection.
FormField formField1 = documentFormFields.get(3);
- Podobnie możesz uzyskać po nazwie obiekt klasy FormField, używając przeciążonej metody get(string name) klasy FormFieldCollection.
FormField formField2 = documentFormFields.get("Text2");
Poniższy przykładowy kod podsumowuje wszystkie powyższe kroki.
// Utwórz dokument
Document doc = new Document();
// Pobierz pola formularza
FormFieldCollection formFields = doc.getRange().getFormFields();
// Uzyskaj pole formularza według indeksu
FormField formField1 = documentFormFields.get(3);
// Pobierz pole formularza według nazwy
FormField formField2 = documentFormFields.get("Text2");
// Wydrukuj nazwę pola formularza
System.out.println("Name: " + formField2.getName());
Często zadawane pytania
Czy automatyzacja dokumentów programu Word jest odpowiednia we wszystkich dokumentach?
Krótko mówiąc, nie. Dobrze radzi sobie z dokumentami utworzonymi na podstawie szablonu głównego.
Jak utworzyć pola automatyzacji dokumentów programu Word?
Pola automatyzacji są dostępne w programie Microsoft Word. Czasami trudno jest coś ustawić. Biblioteki programistyczne, takie jak Conholdate.Total for Java do automatyzacji dokumentów Word, są zazwyczaj preferowaną alternatywą.
Jakie dokumenty Word najlepiej nadają się do automatyzacji?
Odkryliśmy, że automatyzacja powtarzających się dokumentów daje najbardziej niezwykłe rezultaty. Na przykład umowy NDA, listy intencyjne, dokumenty, umowy i inne porównywalne dokumenty to doskonały punkt wyjścia.
Zdobądź bezpłatną licencję
Możesz pobrać bezpłatną licencję tymczasową, aby przetestować interfejs API bez ograniczeń ewaluacyjnych.
Podsumowując
W tym artykule wyjaśniliśmy, jak uzyskać i utworzyć pola formularzy w dokumentach MS Word za pomocą Java. Omówiliśmy kroki dodawania pól wprowadzania tekstu, list rozwijanych i pól wyboru w pliku DOC/DOCX. Na koniec omówiliśmy kroki uzyskiwania pól formularza z dokumentu programu Word.
Aby dowiedzieć się więcej o bibliotece automatyzacji Java Word, możesz odwiedzić dokumentację.
Na koniec odwiedzaj stronę conholdate.com, aby otrzymywać regularne aktualizacje.
Zadać pytanie
Zachęcamy do zamieszczania pytań i komentarzy na naszym forum.