Tạo và lấy các trường biểu mẫu từ tài liệu Word bằng Java

Java là ngôn ngữ máy tính cực kỳ phổ biến để tự động hóa việc tạo và thao tác các tài liệu Microsoft Word (DOC, DOCX). Là một lập trình viên Java, bạn có thể viết mã để tạo, thay đổi và lưu tài liệu Word theo chương trình bằng nhiều thư viện Java khác nhau. Điều này có thể tiết kiệm thời gian và công sức khi bạn thực hiện các thao tác như báo cáo, tạo hóa đơn hoặc xử lý khối lượng dữ liệu lớn. Hơn nữa, do tính độc lập về nền tảng của nó, Java là một giải pháp thay thế khả thi để tự động hóa tài liệu trên nhiều hệ điều hành khác nhau. Trong bài viết này, chúng tôi sẽ giải thích cách tạo và lấy các trường biểu mẫu từ tài liệu Word bằng Java.

Các điểm sau đây sẽ được đề cập trong bài viết này:

Thư viện tự động hóa Java Word - Cài đặt

Chúng tôi sẽ sử dụng Conholdate.Total for Java để tự động hóa các tài liệu MS Word. Quy trình cài đặt thư viện tự động hóa Java Word này khá dễ dàng. Người dùng Maven chỉ có thể đưa các cấu hình sau vào tệp pom.xml của dự án của họ.

<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>

Sau đó thực hiện các lệnh sau.

mvn clean    
mvn install -U

Để thiết lập các khung công tác Java khác, vui lòng truy cập releases.conholdate.com.

Tự động hóa từ Java: Chèn trường biểu mẫu trong tài liệu Word

Biểu mẫu là một tài liệu có các khoảng trống (trường) điền vào. Sử dụng Microsoft Word, bạn có thể thiết kế một biểu mẫu đăng ký với các danh sách thả xuống để người dùng có thể chọn các mục nhập. Trường Biểu mẫu được sử dụng để chứa các loại dữ liệu cụ thể, chẳng hạn như tên hoặc địa chỉ. Nhập văn bản, hộp tổ hợp và hộp kiểm là ví dụ về trường biểu mẫu trong Microsoft Word. Trong các phần phụ sau, chúng tôi sẽ giải thích cách chèn trường biểu mẫu trong tài liệu Word bằng Java.

Tạo trường văn bản đầu vào trong tài liệu Word bằng Java

Trong phần phụ này, bạn sẽ tìm hiểu cách tạo trường văn bản đầu vào trong tài liệu Word (DOC/DOCX) bằng Java. Vui lòng làm theo các bước được đưa ra dưới đây:

  1. Đầu tiên, tạo một đối tượng của lớp Document.
  2. Sau đó, tạo một đối tượng của lớp DocumentBuilder và khởi tạo nó bằng đối tượng Document.
  3. Sau đó, thêm trường nhập văn bản bằng phương thức DocumentBuilder.insertTextInput.
  4. Cuối cùng, lưu tài liệu.

Mẫu mã sau đây minh họa cách chèn trường văn bản đầu vào vào tài liệu Word bằng Java.

// Tạo tài liệu
Document doc = new Document();
// Khởi tạo trình tạo tài liệu
DocumentBuilder builder = new DocumentBuilder(doc);
// Thêm kiểu nhập văn bản
builder.insertTextInput("TextInput", TextFormFieldType.REGULAR, "", "Enter your name here", 30);
// Lưu docx kết quả
doc.save("output.docx");

Tài liệu Word kết quả sẽ hiển thị trường nhập văn bản đã tạo như ảnh chụp màn hình sau.

Tạo trường văn bản đầu vào trong tài liệu Word bằng Java

Thêm trình đơn thả xuống trong tài liệu Word bằng Java

Phần phụ này sẽ giải thích cách tạo danh sách thả xuống trong Word (DOC/DOCX) bằng Java.

Các bước được đưa ra như sau:

  1. Đầu tiên, khởi tạo đối tượng của lớp Document.
  2. Thứ hai, khởi tạo một đối tượng của lớp đối tượng DocumentBuilder.
  3. Thứ ba, chèn trường thả xuống bằng phương thức DocumentBuilder.insertComboBox.
  4. Cuối cùng, lưu tài liệu.

Mẫu mã sau đây trình bày cách thêm danh sách thả xuống trong tài liệu Word bằng Java.

// Tạo tài liệu
Document doc = new Document();
// Khởi tạo trình tạo tài liệu
DocumentBuilder builder = new DocumentBuilder(doc);
// Thêm thả xuống
String[] items = { "– Select your favorite footwear –", "Sneakers", "Oxfords", "Flip-flops", "Other" };
builder.insertComboBox("DropDown", items, 0);
// Lưu docx kết quả
doc.save("output.docx");

Đầu ra sẽ được hiển thị trong ảnh chụp màn hình sau.

Tạo trường thả xuống trong tài liệu Word bằng Java

Chèn hộp kiểm vào word Java

Tại đây, bạn sẽ tìm hiểu cách thêm hộp kiểm trong tài liệu Word bằng Java.

Vui lòng viết mã theo các bước được đưa ra dưới đây:

  1. Đầu tiên, tạo đối tượng của lớp Document.
  2. Sau đó, tạo một đối tượng DocumentBuilder và khởi tạo nó bằng đối tượng Document.
  3. Sau đó, tạo trường hộp kiểm bằng phương thức DocumentBuilder.insertCheckBox.
  4. Cuối cùng, lưu tài liệu.

Mẫu mã sau đây minh họa cách tạo hộp kiểm trong tài liệu Word bằng Java.

// Tạo tài liệu
Document doc = new Document();
// Khởi tạo trình tạo tài liệu
DocumentBuilder builder = new DocumentBuilder(doc);
// Thêm hộp kiểm
builder.insertCheckBox("CheckBox", true, true, 0);
// Lưu docx kết quả
doc.save("output.docx");

Lấy các trường biểu mẫu từ tài liệu Word bằng Thư viện tự động hóa Java Word

Cho đến nay, bạn đã học cách thêm các trường biểu mẫu khác nhau vào tài liệu Word bằng Java. Trong phần này, chúng tôi sẽ giải thích cách lấy các trường biểu mẫu của tệp Word bằng Java.

Giả sử chúng ta có một tệp chứa 4 trường biểu mẫu. Hãy tìm hiểu cách lấy bộ sưu tập trường và cách lấy các trường theo tên hoặc chỉ mục của chúng. Vui lòng làm theo hướng dẫn từng bước dưới đây:

  1. Đầu tiên, tải tài liệu Word bằng lớp Tài liệu.
Document doc = new Document("FormFields.doc");
  1. Lấy đối tượng của lớp FormFieldCollection có thể được truy xuất bằng phương thức Range.getFormFields.
FormFieldCollection formFields = doc.getRange().getFormFields();
  1. Để lấy một trường cụ thể theo chỉ mục của nó, bạn có thể truy xuất đối tượng của lớp FormField bằng cách sử dụng phương thức get(int index) của FormFieldCollection.
FormField formField1 = documentFormFields.get(3);
  1. Tương tự, bạn có thể lấy tên đối tượng của lớp FormField bằng cách sử dụng phương thức get(string name) đã nạp chồng của FormFieldCollection.
FormField formField2 = documentFormFields.get("Text2");

Mẫu mã sau đây tổng hợp tất cả các bước trên.

// Tạo tài liệu
Document doc = new Document();
// Lấy các trường biểu mẫu
FormFieldCollection formFields = doc.getRange().getFormFields();
// Lấy trường biểu mẫu theo chỉ mục
FormField formField1 = documentFormFields.get(3);
// Lấy trường biểu mẫu theo tên
FormField formField2 = documentFormFields.get("Text2");
// In tên của trường biểu mẫu
System.out.println("Name: " + formField2.getName());

Câu hỏi thường gặp

Tự động hóa tài liệu Word có phù hợp với tất cả các tài liệu không?

Tóm lại là không. Nó hoạt động tốt với các tài liệu được tạo từ mẫu chính.

Làm cách nào để tạo các trường tự động hóa tài liệu Word?

Các trường tự động hóa có sẵn trong Microsoft Word. Đôi khi rất khó để thiết lập mọi thứ. Các thư viện lập trình như Conholdate.Total for Java dành cho tự động hóa tài liệu Word thường là giải pháp thay thế thích hợp hơn.

Loại tài liệu Word nào là tốt nhất cho tự động hóa?

Chúng tôi đã phát hiện ra rằng việc tự động hóa các tài liệu lặp đi lặp lại mang lại kết quả đáng chú ý nhất. Ví dụ: NDA, Thư cam kết, tài liệu, Thỏa thuận và các tài liệu tương đương khác là nơi tuyệt vời để bắt đầu.

Nhận giấy phép miễn phí

Bạn có thể tải xuống giấy phép tạm thời miễn phí để kiểm tra API mà không bị giới hạn đánh giá.

Tổng hợp

Trong bài viết này, chúng tôi đã giải thích cách lấy và tạo các trường biểu mẫu trong tài liệu MS Word bằng Java. Chúng tôi đã thảo luận về các bước để thêm trường nhập văn bản, trường thả xuống và hộp kiểm trong tệp DOC/DOCX. Cuối cùng, chúng ta đã thảo luận về các bước để lấy các trường biểu mẫu từ tài liệu Word.

Để tìm hiểu thêm về thư viện tự động hóa Java Word, bạn có thể truy cập tài liệu.

Cuối cùng, vui lòng tiếp tục truy cập conholdate.com để cập nhật thường xuyên.

Đặt một câu hỏi

Vui lòng gửi câu hỏi hoặc nhận xét của bạn trong diễn đàn của chúng tôi.

Xem thêm