如何使用ImapX lib獲取gmail的所有文件夾名稱? 我在http://hellowebapps.com/2010-02-09/imapx-net-library-to-manage-imap-folders/中讀過,但沒有找到獲取所有文件夾的部分。如何使用ImapX lib獲取gmail的所有文件夾名稱? C#
1
A
回答
0
這裏是你如何讓所有的文件夾列表...
FolderCollection folders = client.GetFolders();
foreach (Folder myfolder in folders)
{
MessageBox.Show(myfolder.Name);
}
然後使用該名稱:
ImapX.MessageCollection messages = client.Folders["Spam"].Search("ALL", true);
注意,文件夾名稱是敏感的情況下...
0
您可以迭代SubFolder集合,並可以獲取所有這些gamail文件夾和他們的路徑。舉個例子:
var client = new ImapClient(...);
client.Connection();
client.LogIn(...);
foreach (var item in WalkFolderTree(client.Folders))
{
Console.WriteLine(item.FolderPath);
}
client.LogOut();
你必須定製實現遍歷代碼,如:
public IEnumerable<Folder> WalkFolderTree(FolderCollection folders)
{
foreach (var item in folders)
{
if (item.HasChildren)
{
WalkFolderTree(item.SubFolder);
}
yield return item;
}
}
然後,它會列出所有的文件夾,如:
INBOX
...
[Gmail]
[Gmail]/All Mail
[Gmail]/Drafts
[Gmail]/Sent Mail
[Gmail]/Spam
[Gmail]/Starred
[Gmail]/Trash
0
方法如下:
public List<string> getMailboxes(string emailAddress, string emailPassword)
{
var client = new ImapClient("imap.gmail.com", 993, true, true);
if (client.Connect())
{
if (client.Login(emailAddress, emailPassword))
{
//get all parent folers
var folders = client.Folders;
foreach (var parentFolder in folders)
{
//get parent folder path
var parentPath = parentFolder.Path;
//check if every parent folder has subfolder
if (parentFolder.HasChildren)
{
var subfolders = parentFolder.SubFolders;
foreach(var subfolder in subfolders)
{
var subPath = subfolder.Path;
}
}
}
}
}
}
相關問題
- 1. 獲取Gmail所有文件夾IMAP PHP
- 2. 獲取給定文件夾名稱下的所有文件名
- 3. 使用C#獲取文件夾中的所有文件名
- 4. 如何使用GetFilesAsync獲取文件夾中所有png文件的名稱 - WP8
- 5. 獲取文件夾名稱
- 6. 如何獲取使用Visual C++的文件夾中的所有文件名?
- 7. 獲取陣列中所有文件/文件夾的名稱
- 8. 獲取文件夾名稱
- 9. 如何使用C++獲取文件夾中的所有圖像
- 10. 獲取具有給定名稱的所有文件夾
- 11. 如何按名稱獲取文件夾?
- 12. 獲取所有子文件夾的名稱,並和所有的HTML文件,它
- 13. 如何從資產文件夾中獲取所有文件的名稱?
- 14. 使用Actionscript獲取文件夾中的所有文件名
- 15. 如何包含所有lib文件夾?
- 16. 獲取其爲「所有人」共享該文件夾的名稱
- 17. 如何使用部分文件夾名稱獲取文件夾路徑?
- 18. Java - 如何獲取文件夾中的所有文件名
- 19. 如何使用C++在Linux中獲取文件的所有者名稱?
- 20. 如何使用twitter4j lib獲取屏幕名稱的推文?
- 21. 使用動態文件夾名稱獲取特殊文件夾
- 22. 如何獲取其父文件夾的所有文件夾ID?
- 23. 如何在桌面中讀取所有文件夾的名稱?
- 24. 如何獲取C#中HKEY_USERS的子文件夾名稱?
- 25. 如何從驅動器上的父文件夾獲取所有文件和文件夾(帶有名稱)?
- 26. 如何在codeingniter「views」文件夾中獲取文件夾名稱
- 27. 使用ReadDirectoryChangesW重命名文件夾後獲取舊名稱和新名稱C++
- 28. 如何使用gremlin獲取一個文件夾下的所有文件名?
- 29. 如何使用jQuery獲取目錄或文件夾中的所有文件名?
- 30. 如何使用Ruby獲取一個文件夾中的所有文件名?