![](https://products-qa.fileformat.com/vi/email/java/apache-poi-hsmf/header-image.png)
Apache POI HSMF
Xử lý tệp MSG thông qua API Java nguồn mở
Đọc các tệp MSG của Microsoft Outlook để truy cập Thông tin kết xuất, Nội dung chủ đề & Nội dung hoặc Trích xuất tệp đính kèm bằng Apache POI.
Nếu bạn là nhà phát triển Java đang tìm kiếm một thư viện xử lý email để xử lý email, bạn có thể muốn xem xét Apache POI-HSMF. Đây là sự triển khai Java thuần túy của Dự án POI của định dạng Outlook MSG, cung cấp quyền truy cập đọc ở cấp độ thấp vào các tệp MSG cùng với cách thức trực diện người dùng để truy cập nội dung văn bản phổ biến của các tệp MSG như người gửi, chủ đề, nội dung thư và hơn thế nữa . Các nhà phát triển có thể lấy thông tin tiêu đề thư, lưu thư email, đọc thuộc tính Kích thước cố định từ tệp MSG, trích xuất các thuộc tính thư được nhúng, Làm việc với mã hóa thư và hơn thế nữa.
Bắt đầu với Apache POI HSMF
Trước hết, bạn cần cài đặt Bộ phát triển Java (JDK) trên hệ thống của mình. Nếu bạn đã có thì hãy truy cập trang tải xuống của Apache POI để tải xuống bản phát hành ổn định mới nhất trong kho lưu trữ. Trích xuất nội dung của tệp ZIP trong bất kỳ thư mục nào từ đó các thư viện bắt buộc có thể được liên kết với chương trình Java của bạn. Đó là tất cả!
Tham chiếu Apache POI trong dự án Java dựa trên Maven của bạn thậm chí còn đơn giản hơn. Tất cả những gì bạn cần là thêm phần phụ thuộc sau vào pom.xml và cho phép IDE của bạn tìm nạp và tham chiếu các tệp Apache POI Jar.
Apache POI Maven Phụ thuộc
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.0</version>
</dependency>
API to Access Outlook MSG Files
API để truy cập tệp MSG của Outlook
Apache POI-HSMF cho phép các nhà phát triển và lập trình Java truy cập vào nội dung của các tệp Outlook MSG. Apache POI-HSMF là một cổng của định dạng tệp tin thư Microsoft Outlook sang Java thuần túy. Hiện tại, API đang ở mức rất cơ bản và do đó, chức năng hạn chế khả dụng để làm việc với các thư email. Các nhà phát triển có thể nhận được
Trích xuất dữ liệu từ MSG - Java
// Open MSG file
MAPIMessage msg = new MAPIMessage("sample.msg");
// Read Content
System.out.println("From: " + msg.getDisplayFrom());
System.out.println("To: " + msg.getDisplayTo());
System.out.println("CC: " + msg.getDisplayCC());
System.out.println("BCC: " + msg.getDisplayBCC());
System.out.println("Subject: " + msg.getSubject());
Read & Extracts Attachments from Outlook MSG File
Đọc & Trích xuất Tệp đính kèm từ Tệp Outlook MSG
Apache POI-HSMF API cho phép các nhà phát triển Java phân tích cú pháp các tệp Outlook MSG; trích xuất và đọc nội dung của tài liệu nhúng. Các nhà phát triển có thể truy cập tệp đính kèm của thông báo MAPI. Nó hỗ trợ đọc một hoặc một số tệp Outlook MSG và đối với mỗi tệp đó, tạo một tệp văn bản từ các phần có sẵn và một thư mục chứa tệp đính kèm. Nó đọc các phần đính kèm từ tệp MSG của Outlook và ghi nó vào đĩa dưới dạng một tệp riêng lẻ.
Giải nén các tệp đính kèm cho MSG - Java
// Open MSG file
MAPIMessage msg = new MAPIMessage("sample.msg");
// Extract Attachment
AttachmentChunks[] attachments = msg.getAttachmentFiles();
if(attachments.length > 0) {
File d = new File("D:\\Attachments");
if(d.mkdir()) {
for(AttachmentChunks attachment : attachments) {
processAttachment(attachment, d);
}
}
}
Save Email Message Contents inside Java Apps
Lưu nội dung thư email bên trong ứng dụng Java
Các lập trình viên Java có thể sử dụng API Apache POI-HSMF để trích xuất và lưu nội dung thư email. Nội dung email có thể được trích xuất để tạo một tệp mới và sau đó bạn có thể ghi nó vào đĩa với sự trợ giúp của FileWrite.
Giải nén nội dung email để tạo tệp mới thông qua Java
String filename = "message.msg";
MAPIMessage msg = new MAPIMessage(filename);
PrintWriter txtOut = new PrintWriter("ApacheMessage.txt");
txtOut.println("Email Body: " + msg.getTextBody());
txtOut.close();