Sergey yakındadır, ancak varsayılan olarak JavaMail'in list()
'u yalnızca üst düzey klasörler sağlayan bir LIST "" %
yapar. GMail, sistem klasörlerini (Tüm Postalar, Taslaklar, Gönderilmiş Postalar, Spam, Yıldızlı ve Çöp Kutusu), seçilemeyen klasör olan [Gmail]
'un altına koyar, bunun yerine gerçekten LIST "" *
yapmalısınız. Aksi takdirde, , [Gmail]
ve etiketlerinize geri dönersiniz. İşte
, GMail bağlanan bazı örnek kod klasör listesini getirir ve (
[Gmail]
gibi, sadece hiyerarşi yer tutucular değildir yani olanlar) her olmayan
\NoSelect
klasör için ad ve ileti sayısını yazdırır:
Properties props = System.getProperties();
props.setProperty("mail.store.protocol", "imaps");
try {
Session session = Session.getDefaultInstance(props, null);
javax.mail.Store store = session.getStore("imaps");
store.connect("imap.gmail.com", "<username>@gmail.com", "<password>");
javax.mail.Folder[] folders = store.getDefaultFolder().list("*");
for (javax.mail.Folder folder : folders) {
if ((folder.getType() & javax.mail.Folder.HOLDS_MESSAGES) != 0) {
System.out.println(folder.getFullName() + ": " + folder.getMessageCount());
}
}
} catch (MessagingException e) {
e.printStackTrace();
}
Neden yeryüzünde aradığınız sonuçları vermeyen bir cevabı kabul ettiniz? – dkarp