Tính năng
Tổng quan tính năng
Aspose.Email FOSS for C++ cung cấp một API phân lớp để làm việc với các tệp Outlook MSG và
các container Compound File Binary (CFB). Thư viện có 26 lớp công khai trên hai
hệ thống phụ: CFB và MSG/MAPI.
Truy cập Container CFB
Tiểu hệ thống CFB đọc và ghi định dạng Microsoft Compound File Binary — định dạng container nằm dưới các tệp Outlook .msg.
| Lớp | Mục đích |
|---|---|
cfb_reader | Mở và duyệt các tệp CFB hiện có |
cfb_writer | Chuỗi hoá tài liệu CFB thành byte hoặc tệp |
cfb_document | Biểu diễn trong bộ nhớ của tệp CFB |
cfb_node | Nút lưu trữ hoặc luồng riêng lẻ trong cây thư mục |
cfb_storage | Mục lưu trữ có tên |
cfb_stream | Luồng có tên với dữ liệu nhị phân |
Các thao tác chính:
- Mở từ tệp, luồng hoặc byte:
cfb_reader::from_file(),cfb_reader::from_stream(),cfb_reader::from_bytes(),cfb_reader::from_buffer() - Liệt kê nội dung:
storage_ids(),stream_ids(),child_ids(),directory_entry_count() - Duyệt theo đường dẫn:
find_child_by_name(),resolve_path() - Kiểm tra các nút:
cfb_node::is_storage(),cfb_node::is_stream(),creation_time(),modified_time() - Ghi các container:
cfb_writer::to_bytes(),cfb_writer::write_file(),cfb_writer::write_stream()
Tệp MSG Đọc và Ghi
Tiểu hệ thống MSG xử lý định dạng tin nhắn Outlook trên nền CFB.
| Lớp | Mục đích |
|---|---|
msg_reader | Mở và phân tích cú pháp các tệp MSG |
msg_writer | Chuỗi hoá tài liệu MSG |
msg_document | Biểu diễn trong bộ nhớ của tệp MSG |
Các thao tác chính:
- Mở tệp MSG:
msg_reader::from_file(),msg_reader::from_stream() - Kiểm tra siêu dữ liệu:
msg_document::major_version(),msg_document::minor_version(),msg_document::strict() - Ghi tệp MSG:
msg_writer::to_bytes(),msg_writer::write_file(),msg_writer::write_stream() - Chuyển đổi sang CFB:
msg_document::to_cfb_document()để truy cập CFB cấp thấp
API Tin nhắn MAPI Cấp cao
Lớp mapi_message cung cấp giao diện cấp cao cho việc tạo, đọc và chuyển đổi các tin nhắn email.
Tạo tin nhắn:
mapi_message::create()— tạo một tin nhắn mới với tiêu đề và nội dungset_subject(),set_body(),set_html_body()— đặt nội dung tin nhắnset_sender_name(),set_sender_email_address(),set_sender_address_type()— đặt người gửiset_internet_message_id()— đặt tiêu đề Message-IDset_message_class()— đặt lớp tin nhắn MAPIunicode_strings()/set_unicode_strings()— kiểm soát mã hoá chuỗi Unicode
Đang tải tin nhắn:
mapi_message::from_file()— tải từ đường dẫn tệpmapi_message::from_stream()— tải từ luồng đầu vàomapi_message::from_msg_document()— tải từ mộtmsg_document
Lưu tin nhắn:
save()— chuỗi hoá thành byte, luồng hoặc tệpto_msg_document()— chuyển đổi thành mộtmsg_documentđể truy cập cấp thấp
Tệp đính kèm:
mapi_attachment::from_bytes(),mapi_attachment::from_stream()— tải dữ liệu tệp đính kèmmapi_attachment::is_embedded_message()— kiểm tra xem tệp đính kèm có phải là MSG nhúng khôngmapi_attachment::load_data()— tải nội dung tệp đính kèm một cách lười biếng
Thuộc tính MAPI:
mapi_property::property_id(),property_type(),property_tag()— nhận dạng thuộc tínhmapi_property::set_value(),flags(),set_flags()— thao tác thuộc tínhmapi_property_collection::remove()— xóa thuộc tính khỏi một bộ sưu tập
Chuyển đổi EML và MIME
Chuyển đổi giữa định dạng Outlook MSG và EML tiêu chuẩn (RFC 5322 / MIME):
mapi_message::load_from_eml()— phân tích một.emlfile thành mộtmapi_messagemapi_message::save_to_eml()— tuần tự hoá mộtmapi_messagesang định dạng EML
Tiêu đề, nội dung, người gửi, người nhận và tệp đính kèm được giữ nguyên qua các vòng chuyến.
Các Enum và Hằng số
| Enum | Mục đích |
|---|---|
common_message_property_id | Các định danh thuộc tính MAPI tiêu chuẩn (tiêu đề, nội dung, người gửi, tệp đính kèm) |
property_type_code | Mã loại thuộc tính MAPI (số nguyên, chuỗi, nhị phân, thời gian, GUID) |
msg_storage_role | Vai trò lưu trữ trong các tệp MSG (tin nhắn, người nhận, tệp đính kèm) |
directory_object_type | Các loại mục nhập thư mục CFB (lưu trữ, luồng, gốc) |
directory_color_flag | Cờ màu cây đỏ-đen cho các mục nhập thư mục CFB |
sector_marker | Giá trị sector đặc biệt trong bảng phân bổ tệp CFB |