PPTX
DOCX
XLSX
PDF
ODP
EML
通过 C++ 提取 EML 元数据
使用服务器端 API 构建自己的 C++ 应用程序,以添加、编辑、删除或提取 EML 文件的元数据。
如何使用 C++ 获取 EML 元数据
为了提取 EML 元数据,我们将使用
该 API 是面向 C++ 平台的功能丰富、强大且易于使用的文档元数据提取 API。您可以直接下载其最新版本,只需打开
包管理器,搜索 Aspose.Email.Cpp 并安装。您也可以在包管理器控制台中使用以下命令。
命令
PM> Install-Package Aspose.Email.Cpp
通过 C++ 提取 EML 元数据的步骤
在使用 GetProperties 时获取消息的类型,从而通过简单循环获取所有元数据信息。
- 通过 MapiMessage::FromFile 加载 EML 文件
- 使用 get_Properties() 获取属性集合
- 使用 idx_get 获取相应属性
系统要求
Aspose.Email for C++ 支持所有主要平台和操作系统。请确保您具备以下前提条件。
- Microsoft Windows 或兼容的操作系统,具备 Windows 32 位、Windows 64 位和 Linux 64 位的 C++ 运行时环境。
- 在项目中引用 Aspose.Email for C++ DLL。
提取 EML 元数据 - C++
// Load from file
System::SharedPtr<MapiMessage> eml = MapiMessage::FromFile(dataDir + L"message.eml");
System::String subject;
// Access the MapiPropertyTag.PR_SUBJECT property
System::SharedPtr<MapiProperty> prop = eml->get_Properties()->idx_get(MapiPropertyTag::PR_SUBJECT);
// If the property is not found, check the MapiPropertyTag.PR_SUBJECT_W (which is a // Unicode peer of the MapiPropertyTag.PR_SUBJECT)
if (prop == nullptr){
prop = eml->get_Properties()->idx_get(MapiPropertyTag::PR_SUBJECT_W);
}
// Cannot found
if (prop == nullptr){
System::Console::WriteLine(L"No property found!");
return;
}
// Get the property data as string
subject = prop->GetString();
System::Console::WriteLine(System::String(L"Subject:") + subject);
// Read internet code page property
prop = msg->get_Properties()->idx_get(MapiPropertyTag::PR_INTERNET_CPID);
if (prop != nullptr){
System::Console::WriteLine(System::String(L"CodePage:") + prop->GetLong());
}