
HTML یک فرمت پرکاربرد و به راحتی قابل دسترسی است که میتواند توسط طیف وسیعی از پلتفرمها، مرورگرهای وب، از جمله کامپیوترهای رومیزی و دستگاههای موبایل مشاهده شود. در مقابل، فایلهای EML و MSG ممکن است به نرمافزار خاص یا کلاینتهای ایمیل برای مشاهده نیاز داشته باشند، که میتواند دسترسی و مشاهده آنها را با گذشت زمان دشوارتر کند. بنابراین، تبدیل فایلهای MSG یا EML به HTML، مشاهده آنها را آسانتر میکند، بهویژه برای گیرندگانی که ممکن است کلاینتهای ایمیل یا نرمافزار سازگار نداشته باشند.
علاوه بر این، فایلهای HTML آسانتر برای بایگانی و به شکل قابل جستجو و فهرستبندی شده باقی میمانند.
این مقاله یک الگوریتم برای تبدیل سریع و آسان فایلهای MSG یا EML به فرمت HTML با استفاده از جاوا، بدون توجه به هدف اصلی ارائه میدهد. روش قابل اعتماد ما تضمین میکند که محتوای ایمیل، از جمله تصاویر جاسازیشده، به طور کامل بدون هیچگونه خسارتی حفظ میشود. این اطمینان میدهد که یکپارچگی ایمیل در طول فرایند تبدیل حفظ میشود.
این مقاله شامل موضوعات زیر است:
- Java API برای تبدیل فایلهای EML/MSG به HTML
- تبدیل فایلهای EML/MSG به HTML و ذخیره تصاویر به طور جداگانه
- تبدیل فایلهای EML/MSG به HTML و ذخیره تصاویر داخل HTML
- ذخیره HTML با یک هدر
Java API برای تبدیل فایلهای EML/MSG به HTML
برای انجام وظیفه تبدیل فایلهای EML/MSG به HTML، ما از Aspose.Email for Java استفاده خواهیم کرد. این API پردازش ایمیل به کاربران این امکان را میدهد که ایمیلها را مدیریت کنند و با فرمتهای فایل کلاینتهای ایمیل محبوب مانند Thunderbird، Outlook و دیگران کار کنند. برای بهدست آوردن API، میتوان آن را از دانلود یا نصب کرد.
تبدیل فایلهای EML/MSG به HTML و ذخیره تصاویر به طور جداگانه
یک فایل MSG معمولی به صورت زیر است:

با API ما میتوانید هر دایرکتوری را در دستگاه خود مشخص کنید و فایل HTML هدف را با تصاویر در یک پوشه جداگانه ذخیره کنید:

کد زیر فرایند تبدیل یک پیام ایمیل در فرمت MSG یا EML به یک فایل HTML با تصاویر را که به یک دایرکتوری هدف ذخیره میشوند، نشان میدهد. کد مراحل زیر را انجام میدهد:
- ابتدا، مسیرهای منبع و هدف برای فایل MSG/EML منبع و فایل HTML به ترتیب و همچنین دایرکتوری هدف برای منابع را مشخص میکند.
- فایل MSG یا EML را با استفاده از MailMessage.load بارگذاری میکند.
- یک شیء HtmlSaveOptions ایجاد کرده و ویژگی ResourceRenderingMode را به SaveToFile تنظیم میکند.
- یک متد
invoke
برای SaveResourceHandler از HtmlSaveOptions تعریف میکند. - یک دایرکتوری هدف برای منابع در داخل متد
invoke
ایجاد میکند، اگر قبلاً وجود نداشته باشد. - هر منبع را به یک فایل با نام فایل در داخل متد
invoke
بر اساس نوع محتوای منبع ذخیره میکند. - متد save از شیء MailMessage را فراخوانی میکند و نام فایل HTML هدف و شیء HtmlSaveOptions را برای ذخیره ایمیل در فرمت HTML منتقل میکند.
// MSG or EML filename | |
String msgFileName = pathCombine(sourcePath, "A Day in the Park.msg"); | |
// target HTML | |
String htmlFileName = pathCombine(targetPath, "A Day in the Park.html"); | |
// target directory to save images | |
String resourceDir = pathCombine(targetPath, "A Day in the Park"); | |
// Load MSG or EML | |
MailMessage msg = MailMessage.load(msgFileName); | |
// Create HTML save options | |
HtmlSaveOptions htmlSaveOptions = new HtmlSaveOptions(); | |
htmlSaveOptions.setResourceRenderingMode(ResourceRenderingMode.SaveToFile); | |
htmlSaveOptions.setSaveResourceHandler(new SaveResourceHandler() { | |
@Override | |
public void invoke(AttachmentBase attachment, String[] resourceFileName) { | |
resourceFileName[0] = pathCombine(resourceDir, attachment.getContentType().getName()); | |
attachment.save(resourceFileName[0]); | |
} | |
}); | |
msg.save(htmlFileName, htmlSaveOptions); |
تبدیل فایلهای EML/MSG به HTML و ذخیره تصاویر داخل HTML
گاهی اوقات ممکن است ترجیح دهید فایلهای EML/MSG را به HTML تبدیل کنید و تصاویر جاسازیشده را در داخل HTML حفظ کنید.

کد زیر نشان میدهد که چگونه میتوان یک فایل MSG یا EML را به فرمت HTML در جاوا تبدیل کرد و تصاویر را در داخل HTML ذخیره کرد. کد مراحل زیر را انجام میدهد:
- مسیرهای منبع و هدف برای فایل ایمیل و خروجی HTML را تعریف میکند.
- فایل MSG یا EML را با استفاده از MailMessage.load بارگذاری میکند.
- یک نمونه جدید از کلاس HtmlSaveOptions ایجاد میکند که به شما این امکان را میدهد که نحوه ذخیره ایمیل را به عنوان HTML پیکربندی کنید.
- شیء HtmlSaveOptions را برای جاسازی منابع، از جمله تصاویر، به طور مستقیم در HTML پیکربندی میکند.
- متد save از شیء MailMessage را فراخوانی میکند و نام فایل HTML هدف و شیء HtmlSaveOptions را برای ذخیره ایمیل در فرمت HTML منتقل میکند.
// MSG or EML filename | |
String msgFileName = pathCombine(sourcePath, "A Day in the Park.msg"); | |
// target HTML | |
String htmlFileName = pathCombine(targetPath, "A Day in the Park.html"); | |
// Load MSG or EML | |
MailMessage msg = MailMessage.load(msgFileName); | |
// Create HTML save options | |
HtmlSaveOptions htmlSaveOptions = new HtmlSaveOptions(); | |
htmlSaveOptions.setResourceRenderingMode(ResourceRenderingMode.EmbedIntoHtml); | |
msg.save(htmlFileName, htmlSaveOptions); |
ذخیره HTML با یک هدر
به عنوان یک گزینه اختیاری میتوانید HTML را با یک هدر ذخیره کنید. کد زیر نشان میدهد که چگونه میتوان HTML را با یک هدر در جاوا ذخیره کرد:
// Create HTML save options | |
HtmlSaveOptions htmlSaveOptions = new HtmlSaveOptions(); | |
htmlSaveOptions.setResourceRenderingMode(ResourceRenderingMode.EmbedIntoHtml); | |
htmlSaveOptions.setHtmlFormatOptions(HtmlFormatOptions.WriteHeader); |
در نتیجه، یک هدر متنی به HTML هدف اضافه خواهد شد:

نتیجهگیری
به طور خلاصه، از این مقاله آموختید که چگونه فرمت HTML برای بایگانی و مدیریت فایلهای شما راحت است و چگونه تبدیل از فرمتهای EML یا MSG به HTML را در جاوا با استفاده از کتابخانه Aspose.Email for Java انجام دهید. میتوانید ببینید که فرایند تبدیل چقدر سریع و آسان است فقط با چند خط کد. به طور کلی، API ما یک راهحل عالی برای مدیریت و پردازش ایمیل در برنامههای مبتنی بر جاوا است.
اگر سوالی دارید، لطفاً به فروم پشتیبانی رایگان ما بنویسید. همچنین میتوانید اطلاعات بیشتری درباره Aspose.Email for Java، ویژگیها و امکانات آن از مستندات ما کسب کنید.