![](https://products-qa.fileformat.com/hu/email/java/apache-poi-hsmf/header-image.png)
Apache POI HSMF
MSG-fájlok feldolgozása nyílt forráskódú Java API-n keresztül
Olvassa el a Microsoft Outlook MSG fájljait, hogy hozzáférjen a renderelési információkhoz, a tárgy- és törzstartalomhoz, vagy kivonja a mellékleteket az Apache POI-val.
Ha Ön Java-fejlesztő, e-mail-feldolgozó könyvtárat keres az e-mail üzenetek feldolgozásához, érdemes megfontolni az Apache POI-HSMF-et. Ez a POI Project tiszta Java implementációja az Outlook MSG formátumban, amely alacsony szintű olvasási hozzáférést biztosít az MSG-fájlokhoz, valamint egy felhasználóbarát módot az MSG-fájlok közös szöveges tartalmához, például a feladóhoz, a tárgyhoz, az üzenet törzséhez és egyebekhez. . A fejlesztők megkaphatják az üzenetfejléc-információkat, elmenthetik az e-mail üzeneteket, beolvashatják az MSG-fájl rögzített méret tulajdonságait, kibonthatják a beágyazott üzenettulajdonságokat, dolgozhatnak üzenetkódolással és még sok mással.
Az Apache POI HSMF használatának megkezdése
Először is telepítenie kell a Java Development Kit-et (JDK) a rendszerére. Ha már rendelkezik vele, lépjen az Apache POI letöltési oldalára, hogy a legújabb stabil kiadást egy archívumban kapja meg. Csomagolja ki a ZIP fájl tartalmát bármely olyan könyvtárból, ahonnan a szükséges könyvtárak a Java programhoz kapcsolhatók. Ez minden!
Az Apache POI hivatkozás a Maven-alapú Java projektben még egyszerűbb. Mindössze annyit kell tennie, hogy hozzáadja a következő függőséget a pom.xml fájlhoz, és hagyja, hogy az IDE letöltse és hivatkozzon az Apache POI Jar fájlokra.
Apache POI Maven függőség
<!-- 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 az Outlook MSG-fájlok eléréséhez
Az Apache POI-HSMF lehetővé teszi a Java fejlesztők és programozók számára, hogy hozzáférjenek az Outlook MSG-fájlok tartalmához. Az Apache POI-HSMF a Microsoft Outlook üzenetfájl-formátumának portja a tiszta Java-hoz. Az API jelenleg nagyon alapszintű, ezért korlátozott funkcionalitás áll rendelkezésre az e-mail üzenetekkel való munkavégzéshez. A fejlesztők megkaphatják
Adatok kibontása az MSG-ből - 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
Mellékletek olvasása és kibontása az Outlook MSG fájlból
Az Apache POI-HSMF API lehetővé teszi a Java fejlesztők számára az Outlook MSG-fájlok elemzését; bontsa ki és olvassa el a beágyazott dokumentum tartalmát. A fejlesztők hozzáférhetnek a MAPI-üzenetek mellékleteihez. Támogatja egy vagy több Outlook MSG-fájl olvasását, és mindegyikhez szöveges fájlt hoz létre a rendelkezésre álló darabokból és egy mellékleteket tartalmazó könyvtárból. Beolvassa a mellékleteket az Outlook MSG fájlból, és külön fájlként írja a lemezre.
Kivonat mellékletek 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
Mentse az e-mail üzenetek tartalmát a Java alkalmazásokon belül
A Java programozók az Apache POI-HSMF API-t használhatják az e-mail üzenetek tartalmának kinyerésére és mentésére. Az e-mail törzsét kibontva új fájlt hozhatunk létre, majd a FileWrite segítségével lemezre írhatjuk.
Az e-mail törzs kibontása új fájl létrehozásához Java-n keresztül
String filename = "message.msg";
MAPIMessage msg = new MAPIMessage(filename);
PrintWriter txtOut = new PrintWriter("ApacheMessage.txt");
txtOut.println("Email Body: " + msg.getTextBody());
txtOut.close();