java - 如何从 JAVAMAIL 中的不同文件夹中获取电子邮件?
问题描述
我正在尝试使用 JAVAMAIL API 获取“已发送”文件夹,但它不起作用。
实际上,我通过以下代码检查了现有文件夹:
Store store = emailSession.getStore("imaps");
store.connect(imapHost, user, password);
javax.mail.Folder[] folders = store.getDefaultFolder().list("*");
for(Folder f : folders) {
System.out.println("name: "+f.getName());
}
结果
名称:收件箱 名称:垃圾 名称:已发送 名称:垃圾 名称:草稿
我尝试了 2 个不同的电子邮件提供商(Gmail 和 Hostinger),但它不起作用.. 我可以获取INBOX文件夹,但它不适用于Sent文件夹,即使我用不同的字母大小写多次尝试......什么是请问有什么问题吗?
解决方案
在我做了更多研究之后,我发现getName()不是文件夹的真实名称,所以如果你想获得真实姓名,你必须使用 getFullname()
System.out.println("name: "+f.getFullName());
所以我得到了全名,我尝试使用它们,代码现在工作正常..
推荐阅读
- node.js - 如何将文件从 angular7 上传到 Node.js 服务器
- c# - ConnectionString 与 DataDirectory (c#, sqlserver)
- r - 如何使用 data.table 选择一行及其下一行和上一行
- c# - Visual Studio 2019 for Mac:还原或添加 Nuget 包时出错
- python - tkinter:当它通过 for 循环时不改变标签值,它只显示结束值
- javascript - 从数组中返回最新日期
- flutter - Flutter TextField 只输入十进制数字
- python - 如何在另一个while循环中使用if else语句
- python - 在 python 3.7 中评估数学字符串
- python - 使用数学模块将二进制数转换为十进制数