Das Konvertieren von E‑Mail‑Nachrichten zwischen Formaten ist eine häufige Anforderung für Archivierungs‑, Migrations‑ und Compliance‑Workflows. Aspose.Words Cloud SDK for Java bietet eine leistungsstarke cloudbasierte Bibliothek, die die Konvertierung von EML zu MSG in Java einfach und zuverlässig macht. In diesem Leitfaden erfahren Sie, wie Sie das SDK einrichten, ein vollständiges Java‑Beispiel ausführen, dieselbe Operation mit cURL ausführen und die wichtigsten Funktionen verstehen, die diese Bibliothek ideal für E‑Mail‑Format‑Transformationen machen.

So führen Sie die EML-zu-MSG-Konvertierung in Java Schritt für Schritt durch

  1. Konfigurieren Sie Aspose.Words Cloud-Anmeldeinformationen: Erstellen Sie ein Configuration-Objekt und setzen Sie Ihre clientId und clientSecret.
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
  1. Initialisieren Sie den WordsApi-Client: Übergeben Sie die Konfiguration an den WordsApi-Konstruktor.
WordsApi wordsApi = new WordsApi(config);
  1. Laden Sie die EML-Datei in einen Stream: Verwenden Sie FileInputStream, um die Quell-.EML-Datei zu lesen.
String inputFilePath = "sample.eml";
InputStream inputStream = new FileInputStream(inputFilePath);
  1. Erstellen und Senden der Konvertierungsanfrage: Erstellen Sie ein ConvertDocumentRequest, das "msg" als Zielformat angibt, und rufen Sie dann convertDocument auf.
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);

Weitere Details finden Sie in der WordsApi-Klassenreferenz.

  1. Speichern Sie die zurückgegebenen MSG-Bytes in einer Datei: Schreiben Sie das Byte-Array in sample.msg.
String outputFilePath = "sample.msg";
try (OutputStream outputStream = new FileOutputStream(outputFilePath)) {
    outputStream.write(convertedBytes);
}

Vollständiges Codebeispiel: E‑Mail-Formatkonvertierung mit Aspose.Words Cloud

Das folgende Beispiel demonstriert den gesamten Arbeitsablauf für die Konvertierung von EML zu MSG in 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();
        }
    }
}

Hinweis: Dieses Codebeispiel demonstriert die Kernfunktionalität. Bevor Sie es in Ihrem Projekt verwenden, stellen Sie sicher, dass Sie alle Dateipfade und Konfigurationswerte an Ihre tatsächliche Umgebung anpassen, überprüfen Sie, dass alle erforderlichen Abhängigkeiten ordnungsgemäß installiert sind, und testen Sie gründlich in Ihrer Entwicklungsumgebung. Wenn Sie auf Probleme stoßen, lesen Sie bitte die offizielle Dokumentation oder wenden Sie sich an das Support-Team für Unterstützung.

E-Mail-Konvertierung mit cURL und der REST-API

Sie können dieselbe Konvertierung erreichen, ohne Java‑Code zu schreiben, indem Sie die Aspose.Words Cloud REST API direkt aufrufen.

  1. Zugriffstoken erhalten
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"

Die Antwort enthält access_token.

  1. Laden Sie die Quell-EML-Datei hoch (optional, wenn Sie sie im Anforderungstext senden)
curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/sample.eml" \
        -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
        -T "sample.eml"
  1. Konvertierung ausführen
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"
  1. Laden Sie die konvertierte MSG-Datei herunter (wenn Sie den Speicher‑Upload verwendet haben)
curl -X GET "https://api.aspose.cloud/v4.0/words/storage/file/sample.msg" \
        -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
        -o "sample.msg"

Für eine vollständige Liste der Parameter und Optionen siehe die offizielle API-Dokumentation.

Umgebung vorbereiten

Fügen Sie das Aspose.Words Cloud SDK für Java zu Ihrem Projekt hinzu, indem Sie Maven verwenden:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words-cloud</artifactId>
    <version>26.8.0</version>
</dependency>

Sie können das JAR auch direkt von der Release‑Seite herunterladen.
Voraussetzungen:

  • Java 8 oder höher
  • Ein Aspose Cloud‑Konto mit gültigem clientId und clientSecret
  • Netzwerkzugriff auf api.aspose.cloud

Was macht das Aspose.Words Cloud SDK für Java für die E-Mail-Konvertierung geeignet?

  • Native Unterstützung für EML und MSG – Die API versteht beide Formate und bewahrt E‑Mail‑Metadaten, Anhänge und Formatierung.
  • Stream‑basierte Verarbeitung – Sie können mit InputStream und byte[] Objekten arbeiten, wodurch die Notwendigkeit temporärer Dateien auf dem Server entfällt.
  • Hochpräzise Darstellung – Die Konvertierung behält Rich Text, eingebettete Bilder und HTML Inhalte exakt bei, wie sie in der ursprünglichen E‑Mail erscheinen.
  • Skalierbare Cloud‑Ausführung – Schwere Aufgaben werden auf den Servern von Aspose ausgeführt, sodass Ihre Java‑Anwendung leichtgewichtig bleibt.
  • Umfassende Dokumentation – Detaillierte Anleitungen und Referenzmaterialien sind unter der API‑Referenz verfügbar.

Fazit

EML‑zu‑MSG‑Konvertierung in Java wird mühelos, wenn Sie die Möglichkeiten des Aspose.Words Cloud SDK for Java nutzen. Dieser Leitfaden deckt alles ab, von der Vorbereitung der Umgebung bis hin zu einer vollständigen Java‑Implementierung und entsprechenden cURL‑Aufrufen. Die cloudbasierte Architektur des SDK, die Stream‑Unterstützung und die präzise E‑Mail‑Darstellung machen es zur idealen Wahl für Entwickler, die E‑Mail‑Migrationen oder Archivierungsprojekte durchführen. Für Produktionseinsätze benötigen Sie eine kommerzielle Lizenz; Preisinformationen finden Sie auf der Produktseite, und eine temporäre Lizenz kann von der temporäre Lizenzseite bezogen werden.

FAQs

  • Was ist der einfachste Weg, um die EML-zu-MSG-Konvertierung in Java zu starten?
    Fügen Sie die Maven-Abhängigkeit hinzu, konfigurieren Sie Ihre API-Anmeldeinformationen und rufen Sie ConvertDocumentRequest wie im Beispielcode gezeigt auf. Das SDK übernimmt die Konvertierungslogik für Sie.

  • Kann ich EML-Dateien, die im Cloud-Speicher gespeichert sind, konvertieren, ohne sie zuerst herunterzuladen?
    Ja. Geben Sie den Cloud‑Speicherpfad über die Parameter storage und outPath von ConvertDocumentRequest an, und die API liest und schreibt die Dateien direkt im Aspose Cloud‑Speicher.

  • Wird bei der Konvertierung die E‑Mail‑Anhänge beibehalten?
    Absolut. Alle ursprünglichen Anhänge werden beibehalten und in die resultierende .MSG‑Datei eingebettet, sodass die Nachricht vollständig funktionsfähig bleibt.

  • Gibt es ein Limit, wie viele Konvertierungen ich pro Tag durchführen kann?
    Die Konvertierungslimits hängen von Ihrem Aspose Cloud‑Abonnementplan ab; höherwertige Pläne bieten größere tägliche Kontingente und priorisierte Verarbeitung.

Mehr lesen