در این آموزش، نحوه ذخیره پیام Email در دیسک با استفاده از جاوا را بررسی خواهیم کرد. نمونه کد و مراحل نوشتن پیام ایمیل روی دیسک در جاوا را مشاهده خواهید کرد. رویکرد ذکر شده از فراخوانی های API ساده استفاده می کند که می تواند در محیط های جاوا در سیستم عامل های لینوکس، macOS یا ویندوز استفاده شود.
مراحل ذخیره پیام ایمیل در دیسک با استفاده از جاوا
- پروژه خود را با افزودن Aspose.Email فایل JAR از مخزن Maven پیکربندی کنید.
- اطلاعات حساب مانند نام کاربری، رمز عبور، URI صندوق پستی را تنظیم کنید
- کلاینت ایمیل با کلاس IEWSClient ایجاد کنید
- صندوق پستی را دریافت کنید و از طریق هر پیام تکرار کنید
- هر پیام را به عنوان فایل EML یا MSG روی دیسک ذخیره کنید
شما یاد خواهید گرفت که چگونه با استفاده از سرویس گیرنده تبادل با صندوق پستی ارتباط برقرار کنید. در این مثال، ما یک سرویس گیرنده ایمیل با IEWSClient Class ایجاد می کنیم تا به مجموعه همه پیام ها دسترسی داشته باشد و هر یک از آنها را به عنوان یک فایل جداگانه ذخیره کنیم. این فرآیند ساده به شما امکان میدهد ایمیل را بهصورت فایلهای EML یا MSG روی دیسک در جاوا ذخیره کنید. اجرای سریع و آسان نحوه نوشتن پیام ایمیل روی دیسک در جاوا است.
کد برای نوشتن پیام ایمیل در دیسک در جاوا
import com.aspose.email.EWSClient; | |
import com.aspose.email.ExchangeMailboxInfo; | |
import com.aspose.email.ExchangeMessageInfo; | |
import com.aspose.email.ExchangeMessageInfoCollection; | |
import com.aspose.email.IEWSClient; | |
import com.aspose.email.License; | |
import com.aspose.email.system.NetworkCredential; | |
public class SaveEmailToDisk { | |
public static void main(String[] args) throws Exception { // main method for saving Email to disk in Java | |
// Set the license before writing email messages to disk | |
License AsposeSaveEmailinJavaLicense = new License(); | |
AsposeSaveEmailinJavaLicense.setLicense("License.lic"); | |
// Setup account information | |
String MailBoxUri = "https://outlook.office365.com/ews/exchange.asmx"; | |
String Domain = ""; | |
String Username = "username@outlook.com"; | |
String Password = "userpassword"; | |
NetworkCredential CredentiaDetails = | |
new NetworkCredential(Username, Password, Domain); | |
// Create email client | |
IEWSClient EmailClient = EWSClient.getEWSClient(MailBoxUri, CredentiaDetails); | |
try | |
{ | |
// Get mail box | |
ExchangeMailboxInfo MailBoxInfo = EmailClient.getMailboxInfo(); | |
// Get the list of all messages from your mailbox | |
ExchangeMessageInfoCollection MessagesCollection = | |
EmailClient.listMessages(EmailClient.getMailboxInfo().getInboxUri()); | |
// Loop through all the messages with for loop | |
int MessageCount = 1; | |
for (ExchangeMessageInfo MessageInfo : MessagesCollection) | |
{ | |
String strMessageURI = MessageInfo.getUniqueUri(); | |
// Get message details | |
System.out.println("Subject: " + MessageInfo.getSubject()); | |
System.out.println("From: " + MessageInfo.getFrom().toString()); | |
System.out.println("To: " + MessageInfo.getTo().toString()); | |
System.out.println("Message ID: " + MessageInfo.getMessageId()); | |
System.out.println("Unique URI: " + MessageInfo.getUniqueUri()); | |
// Save each message to the disk | |
EmailClient.saveMessage(strMessageURI, "Messsage_" + MessageCount + ".eml"); | |
EmailClient.saveMessage(strMessageURI, "Messsage_" + MessageCount + ".msg"); | |
MessageCount++; | |
} | |
} | |
catch (Exception ex) | |
{ | |
System.out.println("Error: " + ex.getMessage()); | |
} | |
} | |
} |
در مبحث قبل روی ارسال نمونه ایمیل تمرکز کردیم و نحوه ارسال ایمیل با استفاده از جاوا را یاد گرفتیم. این مبحث نحوه استفاده از جاوا ذخیره پیام ایمیل روی دیسک را با مراحل ساده پوشش می دهد.