javamail用pop3查看收件箱功能,收件箱中发件人别名部分中文乱码

db8726 2017-11-17 11:52:27
问题1:
单位邮箱,在获取某些邮件发件人的时候,部分别名中文成了乱码,比如:董吉喆 <xxxx.yssh@xxx.com>
部分代码如下:
Address[] froms = msg.getFrom();
InternetAddress address = (InternetAddress) froms[0];
//取别名
String person = address.getPersonal();
结果显示为
我也尝试过
MimeUtility.decodeText(address.toString());
结果是 <xxxx@xxxx.com>
不知道有没有兄弟碰到过这种问题,怎么解决的?谢谢
请注意我描述的,不是所有的发件人别名都会有乱码问题。
问题2:
另外还有个问题,就是我从登录邮箱看收件箱中(发件人,收件人,抄送都有可能),所有人都有中文别名:,但是通过javamail获取之后的中文成了邮箱简写,比如:蓝总 <lz.yssh@xxx.com>,拿到的是lz.yssh <lz.yssh@xxx.com>
获取收件人的代码部分如下:
StringBuffer receiveAddress = new StringBuffer();
//只获取收件人
Address[] addresss = msg.getRecipients(Message.RecipientType.TO);
for (Address address : addresss) {
receiveAddress.append(decodeText(address.toString())).append(",");
}
// 删除最后一个逗号
receiveAddress.deleteCharAt(receiveAddress.length() - 1);
return receiveAddress .toString();
...全文
292 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianfang 2017-11-18
  • 打赏
  • 举报
回复
你的项目中全部用UTF8或者GBK字符集
db8726 2017-11-17
  • 打赏
  • 举报
回复
引用 1 楼 tianfang 的回复:
http://bianma.supfree.net/chaye.asp?id=5586 这个字GB2312中没有,传输过程中有系统采用了GB2312导致的
兄弟 那这个怎么解决呢?
tianfang 2017-11-17
  • 打赏
  • 举报
回复
http://bianma.supfree.net/chaye.asp?id=5586 这个字GB2312中没有,传输过程中有系统采用了GB2312导致的

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧