Apache POI HSMF
Verwerk MSG-bestanden via Open Source Java API
Lees Microsoft Outlook MSG-bestanden om toegang te krijgen tot Render-informatie, Onderwerp & Body-inhoud of bijlagen uit te pakken met Apache POI.
Als u een Java-ontwikkelaar bent die op zoek is naar een bibliotheek voor e-mailverwerking om e-mailberichten te verwerken, kunt u Apache POI-HSMF overwegen. Het is de pure Java-implementatie van het POI-project van het Outlook MSG-formaat, en biedt leestoegang op laag niveau tot MSG-bestanden, samen met een gebruikersgerichte manier om toegang te krijgen tot de algemene tekstuele inhoud van MSG-bestanden, zoals afzender, onderwerp, berichttekst en meer . Ontwikkelaars kunnen informatie over berichtkoppen krijgen, e-mailberichten opslaan, eigenschappen van vaste grootte uit MSG-bestanden lezen, eigenschappen van ingesloten berichten extraheren, werken met berichtcodering en nog veel meer.
Aan de slag met Apache POI HSMF
Allereerst moet u de Java Development Kit (JDK) op uw systeem hebben geïnstalleerd. Als je het al hebt, ga dan naar de Apache POI's download pagina om de laatste stabiele release in een archief te krijgen. Pak de inhoud van het ZIP-bestand uit in een willekeurige map van waaruit de benodigde bibliotheken aan uw Java-programma kunnen worden gekoppeld. Dat is alles!
Verwijzen naar Apache POI in uw op Maven gebaseerde Java-project is nog eenvoudiger. Het enige dat u nodig hebt, is de volgende afhankelijkheid toe te voegen aan uw pom.xml en uw IDE de Apache POI Jar-bestanden te laten ophalen en ernaar te laten verwijzen.
Apache POI Maven-afhankelijkheid
<!-- 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 voor toegang tot Outlook MSG-bestanden
Apache POI-HSMF geeft Java-ontwikkelaars en programmeurs toegang tot de inhoud van Outlook MSG-bestanden. Apache POI-HSMF is een poort van het Microsoft Outlook-berichtbestandsformaat naar puur Java. De API bevindt zich vanaf nu op het zeer basale niveau en daarom is er beperkte functionaliteit beschikbaar voor het werken met e-mailberichten. Ontwikkelaars kunnen krijgen
Gegevens extraheren uit 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
Bijlagen lezen en extraheren uit Outlook MSG-bestand
Apache POI-HSMF API stelt Java-ontwikkelaars in staat Outlook MSG-bestanden te ontleden; extraheer en lees de inhoud van het ingesloten document. Ontwikkelaars hebben toegang tot bijlagen van MAPI-berichten. Het ondersteunt het lezen van een of meerdere Outlook MSG-bestanden en maakt voor elk van hen een tekstbestand van beschikbare brokken en een map die bijlagen bevat. Het leest bijlagen van het Outlook MSG-bestand en schrijft het naar schijf als een afzonderlijk bestand.
Bijlagen uitpakken voor 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
Bewaar de inhoud van e-mailberichten in Java Apps
Java-programmeurs kunnen Apache POI-HSMF API gebruiken om de inhoud van e-mailberichten te extraheren en op te slaan. De hoofdtekst van de e-mail kan worden uitgepakt om een nieuw bestand te maken, en u kunt het vervolgens naar schijf schrijven met behulp van FileWrite.
E-mailtekst uitpakken om een nieuw bestand te maken via Java
String filename = "message.msg";
MAPIMessage msg = new MAPIMessage(filename);
PrintWriter txtOut = new PrintWriter("ApacheMessage.txt");
txtOut.println("Email Body: " + msg.getTextBody());
txtOut.close();