การสำรองและกู้คืนข้อมูล IMAP

Aspose.Email สำหรับ Java มีความสามารถในการสำรองและกู้คืนข้อความ สำหรับกรณีนี้ API มีวิธีการต่อไปนี้

บทความนี้สาธิตวิธีการสำรองและกู้คืนข้อความโดยใช้ ImapClient คลาส.

สำรองข้อความ

เพื่อสำรองข้อความ ให้ใช้ ImapClient.backup วิธีการตามที่แสดงในโค้ดตัวอย่างต่อไปนี้

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);

ImapMailboxInfo mailboxInfo = imapClient.getMailboxInfo();

ImapFolderInfo info = imapClient.getFolderInfo(mailboxInfo.getInbox().getName());
ImapFolderInfoCollection infos = new ImapFolderInfoCollection();
infos.addItem(info);

imapClient.backup(infos, dataDir + "\\ImapBackup.pst", com.aspose.email.BackupSettings.to_BackupSettings(BackupOptions.Recursive));

กู้คืนข้อความ

เพื่อสำรองข้อความ ให้ใช้ ImapClient.restore วิธีการตามที่แสดงในโค้ดตัวอย่างต่อไปนี้

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);

ImapRestoreSettings settings = new ImapRestoreSettings();
settings.setRecursive(true);
PersonalStorage pst = PersonalStorage.fromFile(dataDir + "\\ImapBackup.pst");
imapClient.restore(pst, settings);

การสำรองและกู้คืน IMAP ด้วย MultiConnection

เมื่อทำงานกับข้อความจำนวนมาก การสำรอง/กู้คืนข้อมูลอาจใช้เวลานาน สำหรับกรณีนี้ API ให้การสนับสนุนการเชื่อมต่อหลายครั้งระหว่างการสำรองและการกู้คืน เพื่อเปิดใช้งานโหมด MultiConnection ให้ตั้งค่า ImapClient.UseMultiConnection คุณสมบัติสำหรับ MultiConnectionMode.Enable. โค้ดตัวอย่างต่อไปนี้สาธิตการสำรองและกู้คืนข้อมูลโดยเปิดใช้งานโหมด MultiConnection

สำรองข้อความด้วย MultiConnection

โค้ดตัวอย่างต่อไปนี้สาธิตการดำเนินการสำรองข้อมูลโดยเปิดใช้งานโหมด MultiConnection

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);

imapClient.setUseMultiConnection(MultiConnectionMode.Enable);

ImapMailboxInfo mailboxInfo = imapClient.getMailboxInfo();

ImapFolderInfo info = imapClient.getFolderInfo(mailboxInfo.getInbox().getName());
ImapFolderInfoCollection infos = new ImapFolderInfoCollection();
infos.addItem(info);

imapClient.backup(infos, dataDir + "\\ImapBackup.pst", com.aspose.email.BackupSettings.to_BackupSettings(BackupOptions.Recursive));

กู้คืนข้อความด้วย MultiConnection

โค้ดตัวอย่างต่อไปนี้สาธิตการดำเนินการกู้คืนโดยเปิดใช้งานโหมด MultiConnection

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-Java
// The path to the File directory.
String dataDir = "data/";
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();

// Specify host, username and password, and set port for your client
imapClient.setHost("imap.gmail.com");
imapClient.setUsername("your.username@gmail.com");
imapClient.setPassword("your.password");
imapClient.setPort(993);
imapClient.setSecurityOptions(SecurityOptions.Auto);

imapClient.setUseMultiConnection(MultiConnectionMode.Enable);

ImapRestoreSettings settings = new ImapRestoreSettings();
settings.setRecursive(true);
PersonalStorage pst = PersonalStorage.fromFile(dataDir + "\\Outlook.pst");
imapClient.restore(pst, settings);