Javamail 发送附件中文名乱码问题解决

利用Javamail 发送带附件的邮件的时候,发现附件如果是中文名的情况下,即使发送成功,接收方也会出现乱码。这个网上很多相关的处理方法,不过有一些地方不应适合,比如用字符转型或者BASE64Encoder加密,都未必适合本人的实际情况

后来发现用javax.mail.internet.MimeUtility.encodeText()解决了这个附件乱码的问题,部分代码如下

DataSource source = new FileDataSource(filePath);
                    
bodyPart = new MimeBodyPart();

bodyPart.setDataHandler(new DataHandler(source));
//logger.info(MimeUtility.encodeText(fileName));
bodyPart.setFileName(MimeUtility.encodeText(fileName));

multiPart.addBodyPart(bodyPart);
 

 

 

你可能感兴趣的:(javamail)