सर्गेई करीब है, लेकिन डिफ़ॉल्ट रूप से जावामेल का list()
LIST "" %
करता है, जो आपको केवल शीर्ष-स्तरीय फ़ोल्डर्स देता है। जीमेल अपने सिस्टम फ़ोल्डर (सभी मेल, ड्राफ्ट्स, प्रेषित मेल, स्पैम, तारांकित, और ट्रैश) को गैर-चयन योग्य फ़ोल्डर [Gmail]
के तहत रखता है, इसलिए आपको वास्तव में LIST "" *
करने की आवश्यकता है। अन्यथा, आप बस , [Gmail]
, और अपने लेबल वापस प्राप्त करेंगे।
यहाँ, कुछ नमूना कोड जीमेल से कनेक्ट होता है फ़ोल्डर सूची को हासिल करेगा, और (अर्थात जो कि सिर्फ पदानुक्रम प्लेसहोल्डर नहीं हैं [Gmail]
की तरह) प्रत्येक गैर \NoSelect
फ़ोल्डर के लिए नाम और संदेश गिनती बाहर प्रिंट:
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();
}
पृथ्वी पर आपने ऐसा उत्तर क्यों स्वीकार किया जिसने आपको वह परिणाम नहीं दिए जिन्हें आप ढूंढ रहे थे? – dkarp