تبدیل پیام‌های ایمیل بین فرمت‌ها یک نیاز مکرر برای آرشیو، مهاجرت و جریان‌های کاری انطباق است. Aspose.Words Cloud SDK for Java کتابخانه‌ای قدرتمند مبتنی بر ابر ارائه می‌دهد که تبدیل EML به MSG را در جاوا ساده و قابل اعتماد می‌کند. در این راهنما خواهید آموخت که چگونه SDK را تنظیم کنید، یک مثال کامل جاوا را اجرا کنید، همان عملیات را با cURL انجام دهید و ویژگی‌های کلیدی که این کتابخانه را برای تبدیل فرمت ایمیل ایده‌آل می‌سازد، درک کنید.

نحوه انجام تبدیل EML به MSG در جاوا - گام به گام

  1. پیکربندی اعتبارهای Aspose.Words Cloud: یک شیء Configuration ایجاد کنید و clientId و clientSecret خود را تنظیم کنید.
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
  1. مقداردهی اولیه به کلاینت WordsApi: پیکربندی را به سازنده WordsApi پاس دهید.
WordsApi wordsApi = new WordsApi(config);
  1. بارگذاری فایل EML به‌صورت جریان: برای خواندن فایل .EML منبع از FileInputStream استفاده کنید.
String inputFilePath = "sample.eml";
InputStream inputStream = new FileInputStream(inputFilePath);
  1. ایجاد و ارسال درخواست تبدیل: یک ConvertDocumentRequest بسازید که "msg" را به عنوان قالب هدف مشخص می‌کند، سپس convertDocument را فراخوانی کنید.
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);

برای جزئیات بیشتر، به مرجع کلاس WordsApi مراجعه کنید.

  1. ذخیره بایت‌های MSG بازگشتی در یک فایل: آرایه بایت را در sample.msg بنویسید.
String outputFilePath = "sample.msg";
try (OutputStream outputStream = new FileOutputStream(outputFilePath)) {
    outputStream.write(convertedBytes);
}

مثال کامل کد: تبدیل قالب ایمیل با Aspose.Words Cloud

مثال زیر کل جریان کار تبدیل EML به MSG را در جاوا نشان می‌دهد.

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();
        }
    }
}

توجه: این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، اطمینان حاصل کنید که مسیرهای فایل و مقادیر پیکربندی را به‌گونه‌ای به‌روز کنید که با محیط واقعی شما مطابقت داشته باشد، بررسی کنید که تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک به تیم پشتیبانی مراجعه نمایید.

تبدیل ایمیل با استفاده از cURL و REST API

می‌توانید همان تبدیل را بدون نوشتن کد Java با فراخوانی مستقیم Aspose.Words Cloud REST API انجام دهید.

  1. دریافت توکن دسترسی
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"

پاسخ شامل access_token است.

  1. آپلود فایل EML منبع (اختیاری اگر آن را در بدنهٔ درخواست ارسال کنید)
curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/sample.eml" \
        -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
        -T "sample.eml"
  1. اجرای تبدیل
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. فایل MSG تبدیل‌شده را دانلود کنید (اگر از بارگذاری ذخیره‌سازی استفاده کرده‌اید)
curl -X GET "https://api.aspose.cloud/v4.0/words/storage/file/sample.msg" \
        -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
        -o "sample.msg"

برای دریافت فهرست کامل پارامترها و گزینه‌ها، به مستندات رسمی API مراجعه کنید.

آماده‌سازی محیط

Aspose.Words Cloud SDK for Java را با استفاده از Maven به پروژه خود اضافه کنید:

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

شما می‌توانید JAR را مستقیماً از صفحه انتشار دانلود کنید.
پیش‌نیازها:

  • جاوا 8 یا بالاتر
  • یک حساب Aspose Cloud با clientId و clientSecret معتبر
  • دسترسی شبکه به api.aspose.cloud

چه عواملی Aspose.Words Cloud SDK for Java را برای تبدیل ایمیل مناسب می‌کند

  • پشتیبانی بومی از EML و MSG - API هر دو فرمت را درک می‌کند و متادیتای ایمیل، پیوست‌ها و قالب‌بندی را حفظ می‌نماید.
  • پردازش مبتنی بر جریان - می‌توانید با اشیاء InputStream و byte[] کار کنید و نیازی به فایل‌های موقت روی سرور نیست.
  • رندرینگ با دقت بالا - تبدیل متن غنی، تصاویر جاسازی‌شده و بدنه‌های HTML را دقیقاً همان‌گونه که در ایمیل اصلی هستند، حفظ می‌کند.
  • اجرای مقیاس‌پذیر در ابر - پردازش سنگین بر روی سرورهای Aspose انجام می‌شود، بنابراین برنامه Java شما سبک باقی می‌ماند.
  • مستندات جامع - راهنمایی‌های تفصیلی و مطالب مرجع در مرجع API موجود است.

نتیجه‌گیری

EML به MSG تبدیل در Java به‌سادگی انجام می‌شود وقتی از قابلیت‌های Aspose.Words Cloud SDK for Java استفاده کنید. این راهنما همه چیز را از آماده‌سازی محیط تا پیاده‌سازی کامل Java و فراخوانی‌های معادل cURL پوشش داد. معماری مبتنی بر ابر SDK، پشتیبانی از استریم و رندر دقیق ایمیل، آن را به گزینه‌ای ایدهال برای توسعه‌دهندگانی که با مهاجرت یا پروژه‌های بایگانی ایمیل سروکار دارند، تبدیل می‌کند. برای استقرارهای تولیدی به یک لایسنس تجاری نیاز خواهید داشت؛ جزئیات قیمت‌گذاری در صفحه محصول موجود است و می‌توانید یک لایسنس موقت را از صفحه لایسنس موقت دریافت کنید.

FAQs

  • به آسان‌ترین روش برای شروع تبدیل EML به MSG در جاوا چیست؟
    وابستگی Maven را اضافه کنید، اعتبارنامه‌های API خود را پیکربندی کنید و همان‌طور که در کد نمونه نشان داده شده است، ConvertDocumentRequest را فراخوانی کنید. SDK به‌طور خودکار منطق تبدیل را برای شما انجام می‌دهد.

  • آیا می‌توانم فایل‌های EML ذخیره‌شده در فضای ابری را بدون دانلود اولیه تبدیل کنم؟
    بله. مسیر ذخیره‌سازی ابری را از طریق پارامترهای storage و outPath در ConvertDocumentRequest ارائه دهید و API به‌صورت مستقیم فایل‌ها را در فضای ذخیره‌سازی Aspose Cloud می‌خواند و می‌نویسد.

  • آیا تبدیل پیوست‌های ایمیل را حفظ می‌کند؟
    به طور کامل. تمام پیوست‌های اصلی حفظ شده و در فایل .MSG نهایی جاسازی می‌شوند، به طوری که پیام به‌صورت کامل کار می‌کند.

  • آیا محدودیتی برای تعداد تبدیل‌هایی که می‌توانم در روز انجام دهم وجود دارد؟
    محدودیت‌های تبدیل بستگی به سطح اشتراک Aspose Cloud شما دارد؛ برنامه‌های سطح بالاتر سهمیه‌های روزانه بزرگتر و پردازش با اولویت بیشتری ارائه می‌دهند.

ادامه مطلب