Convert email to HTML in Java

HTML هو تنسيق شائع الاستخدام وسهل الوصول يمكن رؤيته بواسطة مجموعة واسعة من المنصات ومتصفحات الويب، بما في ذلك أجهزة الكمبيوتر المكتبية والأجهزة المحمولة. بالمقارنة، قد تتطلب ملفات EML و MSG برامج معينة أو عملاء بريد إلكتروني لرؤيتها، مما قد يجعل من الصعب الوصول إليها وعرضها مع مرور الوقت. لذلك، فإن تحويل ملفات MSG أو EML إلى HTML يجعلها أسهل عرضًا، خاصةً للمستلمين الذين قد لا يمتلكون عملاء بريد إلكتروني أو برامج متوافقة.

بالإضافة إلى ذلك، فإن ملفات HTML أسهل في الأرشفة وتبقى في تنسيق بحثي ومؤشر.

يقدم هذا المقال خوارزمية لتحويل ملفات MSG أو EML إلى تنسيق HTML بسرعة وسهولة باستخدام Java، بغض النظر عن الغرض الأساسي. تضمن طريقتنا الموثوقة أن محتوى البريد الإلكتروني، بما في ذلك الصور المدمجة، محفوظ بالكامل دون أي فقدان. وهذا يضمن أن سلامة البريد الإلكتروني محفوظة طوال عملية التحويل.

يغطي المقال المواضيع التالية:

Java API لتحويل ملفات EML/MSG إلى HTML

لإتمام مهمة تحويل ملفات EML/MSG إلى HTML، سنستخدم Aspose.Email for Java. تتيح هذه واجهة برمجة تطبيقات معالجة البريد الإلكتروني للمستخدمين إدارة رسائل البريد الإلكتروني والعمل مع تنسيقات الملفات لعملاء البريد الإلكتروني الشائعين مثل Thunderbird و Outlook وغيرها. للحصول على الواجهة، يمكن إما تحميل أو تثبيتها من المستودع الخاص بنا.

تحويل ملفات EML/MSG إلى HTML مع حفظ الصور بشكل منفصل

يحتوي ملف MSG النموذجي على العرض التالي:

عرض ملف MSG

مع واجهتنا، يمكنك تعيين أي دليل على جهازك وحفظ ملف HTML المستهدف مع الصور في مجلد منفصل:

عرض ملف HTML

يظهر مقتطف الكود أدناه عملية تحويل رسالة بريد إلكتروني بتنسيق MSG أو EML إلى ملف HTML مع الصور، والتي يتم حفظها في دليل مستهدف. يقوم الكود بالخطوات التالية:

  1. أولاً، يحدد المسارات المصدر والمستهدف لملف MSG/EML المصدر وملف HTML، على التوالي، فضلاً عن الدليل المستهدف للموارد.
  2. يقوم بتحميل ملف MSG أو EML باستخدام MailMessage.load الطريقة.
  3. ينشئ كائن HtmlSaveOptions ويحدد خاصية ResourceRenderingMode لتكون SaveToFile.
  4. يعرف طريقة invoke لـ SaveResourceHandler الخاصة بـ HtmlSaveOptions.
  5. ينشئ دليل مستهدف للموارد داخل الطريقة invoke إذا لم يكن موجودًا بالفعل.
  6. يحفظ كل مورد في ملف باسم ملف داخل الطريقة invoke بناءً على نوع محتوى المورد.
  7. يستدعي 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.

صورة داخل HTML في محرر نصوص

يظهر مقتطف الكود أدناه كيفية تحويل ملف MSG أو EML إلى تنسيق HTML في Java وحفظ الصور داخل HTML. يقوم الكود بالخطوات التالية:

  1. يحدد المسارات المصدر والمستهدفة لملف البريد الإلكتروني وملف HTML الناتج.
  2. يقوم بتحميل ملف MSG أو EML باستخدام MailMessage.load الطريقة.
  3. ينشئ مثيل جديد من فئة HtmlSaveOptions، والتي تتيح لك تكوين كيفية حفظ البريد الإلكتروني كـ HTML.
  4. يقوم بتكوين مثيل HtmlSaveOptions لدمج الموارد، بما في ذلك الصور، مباشرةً في HTML.
  5. يستدعي 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 مع رأس في Java:

// Create HTML save options
HtmlSaveOptions htmlSaveOptions = new HtmlSaveOptions();
htmlSaveOptions.setResourceRenderingMode(ResourceRenderingMode.EmbedIntoHtml);
htmlSaveOptions.setHtmlFormatOptions(HtmlFormatOptions.WriteHeader);

نتيجة لذلك، سيتم إضافة رأس نصي إلى ملف HTML المستهدف:

رأس نصي

الخاتمة

لتلخيص، من خلال هذا المقال تعلمت للتو عن سهولة استخدام تنسيق HTML في الأرشفة وإدارة ملفاتك وكيفية تنفيذ التحويل من تنسيقات EML أو MSG إلى HTML في Java باستخدام مكتبة Aspose.Email for Java. يمكنك أن ترى مدى سرعة وسهولة عملية التحويل باستخدام بضع سطور من الكود. بشكل عام، تعتبر واجهتنا حلاً ممتازًا لإدارة البريد الإلكتروني ومعالجته في تطبيقات Java.

في حالة كان لديك أي أسئلة، لا تتردد في الكتابة إلى منتدى الدعم المجاني. يمكنك أيضًا معرفة المزيد عن Aspose.Email for Java، وميزاته ومرافقه من التوثيق.

انظر أيضًا