springboot使用javaMailSender发送邮件时附件名太长会被截取掉或者中文乱码问题

springboot使用javaMailSender发送邮件时附件名太长会被截取掉或者中文乱码问题

public void sendMail() {
        MimeMessage mimeMessage = javaMailSender.createMimeMessage();
        System.getProperties().setProperty("mail.mime.splitlongparameters", "false");
        MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);
        //邮件设置值
        mimeMessageHelper.setSubject("邮件主题");//邮件主题
        mimeMessageHelper.setText("<b style='color:red'>就这?</b>", true);//邮件内容
        mimeMessageHelper.setText("<a href=\"https://www.baidu.com/\">111</a>", true);//邮件内容
        //邮件 附件
        String attachmentFilename = "0215165,我是卧底,打扫房间欧文放假哦.pdf";
        mimeMessageHelper.addAttachment(attachmentFilename, new File("D:\\test.pdf"));
        mimeMessageHelper.setTo("xxxx@qq.com");//邮件发给谁
        mimeMessageHelper.setFrom("xxx@qq.com"); //邮件来自于谁
        javaMailSender.send(mimeMessage);
    }

我们在发送邮件的时候需要带上附件,但是有时候因为附件名字太长会被截取掉或者附件名字为数字和中文的组合导致有些中文乱码,所以我们需要进行相应的处理。

我们只需要到代码中加入这行代码就行了

 System.getProperties().setProperty("mail.mime.splitlongparameters", "false");

ok,现在就不会乱码了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值