![](https://products-qa.fileformat.com/it/email/java/apache-poi-hsmf/header-image.png)
Apache POI HSMF
Elabora i file MSG tramite l'API Java Open Source
Leggi i file MSG di Microsoft Outlook per accedere alle informazioni di rendering, al contenuto dell'oggetto e del corpo o per estrarre gli allegati con Apache POI.
Se sei uno sviluppatore Java alla ricerca di una libreria di elaborazione e-mail per elaborare i messaggi e-mail, potresti prendere in considerazione Apache POI-HSMF. È l'implementazione Java pura del formato MSG di Outlook del progetto POI, che fornisce accesso in lettura di basso livello ai file MSG insieme a un modo rivolto all'utente per ottenere il contenuto testuale comune dei file MSG come mittente, oggetto, corpo del messaggio e altro . Gli sviluppatori possono ottenere informazioni sulle intestazioni dei messaggi, salvare messaggi e-mail, leggere le proprietà delle dimensioni fisse dal file MSG, estrarre le proprietà dei messaggi incorporati, lavorare con la codifica dei messaggi e molto altro.
Guida introduttiva ad Apache POI HSMF
Prima di tutto, devi avere il Java Development Kit (JDK) installato sul tuo sistema. Se lo hai già, procedi alla pagina download di Apache POI per ottenere l'ultima versione stabile in un archivio. Estrarre il contenuto del file ZIP in qualsiasi directory da cui è possibile collegare le librerie richieste al proprio programma Java. Questo è tutto!
Fare riferimento a Apache POI nel tuo progetto Java basato su Maven è ancora più semplice. Tutto ciò di cui hai bisogno è aggiungere la seguente dipendenza nel tuo pom.xml e lasciare che il tuo IDE prenda e faccia riferimento ai file Apache POI Jar.
Dipendenza Apache POI Maven
<!-- 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 per accedere ai file MSG di Outlook
Apache POI-HSMF consente agli sviluppatori Java e ai programmatori di accedere al contenuto dei file MSG di Outlook. Apache POI-HSMF è un port del formato di file di messaggi di Microsoft Outlook su Java puro. L'API è al livello molto semplice al momento e, pertanto, sono disponibili funzionalità limitate per lavorare con i messaggi di posta elettronica. Gli sviluppatori possono ottenere
Estrai dati da 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
Leggi ed estrae gli allegati dal file MSG di Outlook
L'API Apache POI-HSMF consente agli sviluppatori Java di analizzare i file MSG di Outlook; estrarre e leggere il contenuto del documento incorporato. Gli sviluppatori possono accedere agli allegati dei messaggi MAPI. Supporta la lettura di uno o più file MSG di Outlook e per ciascuno di essi crea un file di testo dai blocchi disponibili e una directory che contiene allegati. Legge gli allegati dal file MSG di Outlook e lo scrive su disco come un singolo file.
Estrai allegati per 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
Salva il contenuto dei messaggi e-mail all'interno delle app Java
I programmatori Java possono utilizzare l'API Apache POI-HSMF per estrarre e salvare il contenuto dei messaggi di posta elettronica. Il corpo dell'e-mail può essere estratto per creare un nuovo file e quindi scriverlo su disco con l'aiuto di FileWrite.
Estrai il corpo dell'email per creare un nuovo file tramite Java
String filename = "message.msg";
MAPIMessage msg = new MAPIMessage(filename);
PrintWriter txtOut = new PrintWriter("ApacheMessage.txt");
txtOut.println("Email Body: " + msg.getTextBody());
txtOut.close();