La conversion des messages électroniques entre différents formats est une exigence fréquente pour les flux de travail d’archivage, de migration et de conformité. Aspose.Words Cloud SDK for Java fournit une bibliothèque puissante basée sur le cloud qui rend la conversion de EML vers MSG en Java simple et fiable. Dans ce guide, vous apprendrez comment configurer le SDK, exécuter un exemple complet en Java, réaliser la même opération avec cURL, et comprendre les fonctionnalités clés qui font de cette bibliothèque un choix idéal pour les transformations de formats d’e‑mail.
Comment effectuer la conversion EML en MSG en Java - Étape par étape
- Configurer les informations d’identification Aspose.Words Cloud : Créez un objet
Configurationet définissez votreclientIdetclientSecret.
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
- Initialiser le client WordsApi : Passez la configuration au constructeur
WordsApi.
WordsApi wordsApi = new WordsApi(config);
- Charger le fichier EML dans un flux : Utilisez
FileInputStreampour lire le fichier source.EML.
String inputFilePath = "sample.eml";
InputStream inputStream = new FileInputStream(inputFilePath);
- Créer et envoyer la requête de conversion : Construisez un
ConvertDocumentRequesten spécifiant"msg"comme format cible, puis appelezconvertDocument.
ConvertDocumentRequest request = new ConvertDocumentRequest(
inputStream, // Input document stream
"msg", // Desired output format
null, null, null, null, null, null, null, null);
byte[] convertedBytes = wordsApi.convertDocument(request);
Pour plus de détails, consultez la référence de la classe WordsApi.
- Enregistrez les octets MSG retournés dans un fichier : écrivez le tableau d’octets dans
sample.msg.
String outputFilePath = "sample.msg";
try (OutputStream outputStream = new FileOutputStream(outputFilePath)) {
outputStream.write(convertedBytes);
}
Exemple complet de code : conversion de format d’e‑mail avec Aspose.Words Cloud
L’exemple suivant montre l’ensemble du flux de travail pour la conversion de EML en MSG en Java.
import com.aspose.words.cloud.Configuration;
import com.aspose.words.cloud.api.WordsApi;
import com.aspose.words.cloud.model.requests.ConvertDocumentRequest;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class EmlToMsgConversion {
public static void main(String[] args) {
// Configure Aspose.Words Cloud credentials
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
// Optional: config.setBaseUrl("https://api.aspose.cloud");
WordsApi wordsApi = new WordsApi(config);
String inputFilePath = "sample.eml";
String outputFilePath = "sample.msg";
try (InputStream inputStream = new FileInputStream(inputFilePath)) {
// Convert EML to MSG; format parameter is the target format
ConvertDocumentRequest request = new ConvertDocumentRequest(
inputStream, // Input document stream
"msg", // Desired output format
null, // outPath (null for direct response)
null, // storage (null for default)
null, // loadEncoding
null, // password
null, // encryptedPassword
null, // fontsLocation
null, // useAntiAliasing
null // useHighQualityRendering
);
// The API returns the converted document as a byte array
byte[] convertedBytes = wordsApi.convertDocument(request);
// Write the result to a file
try (OutputStream outputStream = new FileOutputStream(outputFilePath)) {
outputStream.write(convertedBytes);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
Note : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour tous les chemins de fichiers et les valeurs de configuration pour qu’ils correspondent à votre environnement réel, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Conversion d’e-mails à l’aide de cURL et de l’API REST
Vous pouvez obtenir la même conversion sans écrire de code Java en appelant directement l’Aspose.Words Cloud REST API.
- Obtenir un jeton d’accès
curl -X POST "https://api.aspose.cloud/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
La réponse contient access_token.
- Télécharger le fichier EML source (facultatif si vous l’envoyez dans le corps de la requête)
curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/sample.eml" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-T "sample.eml"
- Exécuter la conversion
curl -X POST "https://api.aspose.cloud/v4.0/words/convert?format=msg" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary "@sample.eml" \
-o "sample.msg"
- Télécharger le fichier MSG converti (si vous avez utilisé le téléchargement vers le stockage)
curl -X GET "https://api.aspose.cloud/v4.0/words/storage/file/sample.msg" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o "sample.msg"
Pour une liste complète des paramètres et des options, consultez la documentation officielle de l’API.
Préparer l’environnement
Ajoutez le Aspose.Words Cloud SDK for Java à votre projet en utilisant Maven :
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words-cloud</artifactId>
<version>26.8.0</version>
</dependency>
Vous pouvez également télécharger le JAR directement depuis la page de publication.
Prérequis :
- Java 8 ou supérieur
- Un compte Aspose Cloud avec un
clientIdet unclientSecretvalides - Accès réseau à
api.aspose.cloud
Ce qui rend Aspose.Words Cloud SDK for Java adapté à la conversion d’e-mails
- Prise en charge native des fichiers EML et MSG - L’API comprend les deux formats et préserve les métadonnées des e‑mails, les pièces jointes et la mise en forme.
- Traitement basé sur les flux - Vous pouvez travailler avec les objets
InputStreametbyte[], éliminant ainsi le besoin de fichiers temporaires sur le serveur. - Rendu haute fidélité - La conversion conserve le texte enrichi, les images intégrées et les corps HTML exactement tels qu’ils apparaissent dans l’e‑mail original.
- Exécution cloud évolutive - Le traitement intensif est effectué sur les serveurs d’Aspose, de sorte que votre application Java reste légère.
- Documentation complète - Des guides détaillés et du matériel de référence sont disponibles dans la référence API.
Conclusion
Conversion d’EML en MSG en Java devient facile lorsque vous exploitez les capacités du Aspose.Words Cloud SDK for Java. Ce guide couvre tout, de la préparation de l’environnement à une implémentation Java complète et aux appels cURL équivalents. L’architecture cloud du SDK, la prise en charge des flux et le rendu précis des e‑mails en font le choix idéal pour les développeurs gérant des migrations d’e‑mail ou des projets d’archivage. Pour les déploiements en production, vous aurez besoin d’une licence commerciale ; les détails de tarification sont disponibles sur la page du produit, et une licence temporaire peut être obtenue depuis la page de licence temporaire.
FAQs
-
Quel est le moyen le plus simple de commencer la conversion EML vers MSG en Java ?
Ajoutez la dépendance Maven, configurez vos informations d’identification API et invoquezConvertDocumentRequestcomme démontré dans le code d’exemple. Le SDK se charge de la logique de conversion pour vous. -
Puis-je convertir des fichiers EML stockés dans le stockage cloud sans les télécharger au préalable ?
Oui. Fournissez le chemin du stockage cloud via les paramètresstorageetoutPathdeConvertDocumentRequest, et l’API lira et écrira les fichiers directement dans Aspose Cloud storage. -
La conversion conserve-t-elle les pièces jointes des e‑mails ?
Absolument. Toutes les pièces jointes d’origine sont conservées et intégrées dans le fichier.MSGrésultant, ce qui maintient le message pleinement fonctionnel. -
Y a-t-il une limite au nombre de conversions que je peux effectuer par jour ?
Les limites de conversion dépendent du niveau de votre abonnement Aspose Cloud ; les plans de niveau supérieur offrent des quotas quotidiens plus importants et un traitement prioritaire.