最近在做邮箱功能,其中发件时也需要记录下邮箱的昵称,所以代码中的邮箱地址前会有中文昵称,这也导致邮件发送失败

后台显示邮件发送成功,但是却被退回

Mail delivery failed: returning message to sender

其中,收件地址是这样写的:中文昵称<111111@qq.com> ;

List<String> tos = new ArrayList<>();
tos.add("人不风流枉为人<11111111@qq.com>");
if (ValidateUtils.isNotEmpty(tos)) {InternetAddress[] toAddress = new InternetAddress[tos.size()];for (int i = 0; i < tos.size(); i++) {toAddress[i] = new InternetAddress(tos.get(i));}msg.addRecipients(Message.RecipientType.TO, toAddress);
}

将邮件中文名称去掉,或者改为英文名称,则可以正常发送。

如果还是想要带有中文名称(其实大可不必,因为我的后端接口需要用到这个名称保存在数据库中,所以只能这样),那需要用到 MimeUtility 的转码方法:

先做个测试,方便理解

String name = "人不风流枉为人";
String en = MimeUtility.encodeText(name);
System.out.println("encodeText:  "+en); //结果  encodeText:  =?UTF-8?B?5Lq65LiN6aOO5rWB5p6J5Li65Lq6?=String dn = MimeUtility.decodeText(en);
System.out.println("decodeText:  "+dn); //结果  decodeText:  人不风流枉为人

所以,最后的解决方法,就是将中文昵称转码,测试通过

参考文章:

JAVA基础(13) javaMail发送邮件设置发件人中文昵称

记录下javaMail发送邮件遇到的问题-(邮件中文昵称)相关推荐

  1. javamail发送邮件,解决被垃圾邮件问题

    javamail发送邮件,解决被垃圾邮件问题 参考文章: (1)javamail发送邮件,解决被垃圾邮件问题 (2)https://www.cnblogs.com/mzqworld/articles/ ...

  2. 利用Spring框架封装的JavaMail现实同步或异步邮件发送

    利用Spring框架封装的JavaMail现实同步或异步邮件发送 作者:张纪豪 J2EE简单地讲是在JDK上扩展了各类应用的标准规范,邮件处理便是其中一个重要的应用.它既然是规范,那么我们就可以通过J ...

  3. java outlook 发送邮件_基于java使用JavaMail发送邮件

    一.邮件的相关概念 邮件协议.主要包括: SMTP协议:Simple Mail Transfer Protocol,即简单邮件传输协议,用于发送电子邮件 POP3协议:Post Office Prot ...

  4. JavaMail API 1.4.7邮件发送

    下载oracle javaMail API: http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive- ...

  5. java 延时发送邮件_java编程实现邮件定时发送的方法

    本文实例讲述了java编程实现邮件定时发送的方法.分享给大家供大家参考,具体如下: 最近做项目时客户提出了一个需求:系统定时发送E-mail到其客户,达到通知的效果.先将实例分享给大家,如果确实有一些 ...

  6. php+发送邮件标题乱码_php邮件标题乱码的解决方法

    php邮件标题乱码的解决方法 发布时间:2020-08-18 10:36:53 来源:亿速云 阅读:99 作者:小新 小编给大家分享一下php邮件标题乱码的解决方法,相信大部分人都还不怎么了解,因此分 ...

  7. javamail发送带附件的邮件,发件速度快

    使用javamail发送邮件,准备工作 1.如果使用的是qq邮箱,则需要登录QQ邮箱,找到"设置--账户"找到如下图,将POP3/SMTP服务和IMAP/SMTP服务开启,然后生成 ...

  8. linux下mutt发送邮件,Linux下使用msmtp+mutt发送邮件

    环境:Red Hat 4.1.2-46:msmtp版本:msmtp-1.4.16.tar.b:mutt版本:Mutt 1.4.2.2i (2006-07-14) 总结:这种方式可以实现带附件邮件,注意 ...

  9. 解决java发送邮件无主题且邮件内容乱码问题

    BUG描述:本地测试,正常发送邮件.部署到linux服务器后,发送邮件无主题,无收件人,正文中是乱码(准确说是QP编码). 本以为 是服务器编码问题,各种设置编码,都不行,最终找到了原因,jar包冲突 ...

最新文章

  1. python 基础知识点整理 和详细应用
  2. rosdep init和rosdep update出错处理
  3. keepalived主要模块
  4. 中年人在“洗脑课”上迷了路
  5. STL模板整理 set
  6. 使用Apache Felix文件安装配置OSGi服务
  7. 提高篇 第一部分 基础算法 第4章 广搜的优化技巧
  8. abstract类中不可以有private的成员_C++中public、protected、private的区别
  9. boost::asio 网络传输错误码的一些实验结果(recv error_code)
  10. 如何使用GetParent来得到父对话框的指针
  11. 通过删除注册表破解plsql
  12. this关键字与super关键字
  13. 扫外部二维码进入小程序,并且在小程序内获取二维码链接
  14. 高德地图两点间距离计算函数
  15. 2022陈箫箫胡程灿信息论课程作业 MIMO信道(multi-input multi-output,MIMO)简介
  16. 注销linux用户的方法,Linux下注销登录用户的方法
  17. bmc网络配置_SA5212M5-BMC设置
  18. 保护计算机系统与数据有什么方法,计算机系统开机和硬盘数据保护方法,与其数据保护模块...
  19. 事件推送网关:让cmdb告别“花瓶”
  20. ORALC 抛出ORA-12154的错误

热门文章

  1. 蓝桥杯第七届省赛java组大题解析(“取球博弈”??难度,“压缩变换”三星难度)
  2. 数据仓库系列(19):数据安全
  3. 正则表达式处理:根据英文大写分词
  4. 网络编程实战之高级篇, 彻底解决面试C10k问题, 高并发服务器, IO多路复用, 同时监视多个IO事件
  5. marquee标签的使用
  6. CI/CD轻量级可持续集成工具
  7. java设计工资一般多少_java开发(java开发工程师工资一般多少)
  8. linux运维需要掌握的,学习Linux运维需要掌握哪些技能?Linux运维
  9. Linux 进程间通信之 - 信号量
  10. CH0104 起床困难综合症