`

JavaMail之处理中文附件的问题

    博客分类:
  • java
SUN 
阅读更多
问题:
JavaMail能很好的支持中文,但在测试过程中发现使用JavaMail发带有中文文件名的附件时,文件名是乱码。
 
查找原因:
经测试与查看源文件发现,是在JavaMail包里的一个写邮件的方法对双字节或多字节的字符没有考虑。即在 com.sun.mail.util.LineOutputStream调用 com.sun.mail.util.ASCIIUtility.getBytes(String s); 此方法直接将字符串转化成字符然后转换成字节。其实在String类里的getBytes() 方法就直接可以按照系统缺省的编码正确转换成字节码。
 
解决方法:
将com.sun.mail.util.LineOutputStream中调用ASCIIUtility.getBytes(String s); 方法的部分改为s.getBytes()解决了此问题。 用重新编译好的LineOutputStream.class文件替换javamail里的Com/sun/mail/util/LineOutputStream.class文件即可。
分享到:
评论

相关推荐

    james和javamail实现邮件收发(带发送附件)

    本人最新写了一个邮件收发的例子,可以处理中文的 包括发送附件,附件标题也可以是中文的,可以给大 家参考下!希望能给大家一些帮助!

    bulk-email-sender-v01-mar-14-2008.zip_email_email sender_gmail_批

    批量邮件发送器v01 - 2008-03-15 功能:对于某一路径下的文件,以附件的形式发送到某一个或多个邮箱里。 可配置参数(properties.txt)包括: ...2. 中文支持应该没问题 运行: java -jar BulkEmailSender.jar

    JSP2.0技术手册pdf(带示例源码).zip

    17-4 JavaMail 范例程序三——传送附件 17-5 JavaMail 范例程序四——传送自定义内容的邮件 第十八章 Web 架构—— MVC 18-1 MVC(Model - View - Controller) 的介绍 18-2 Model 1 与 Model 2 的介绍 18-3 Model 1 ...

    jsp网络编程从基础到实践

    实例19 中文字符处理程序示例 第5章 JSP的内置对象 实例20 request常用方法的应用 实例21 获得表单数据 实例22 页面重定向程序示例 实例23 定时刷新页面程序示例 实例24 记住会话的用户名 实例25 猜字母游戏 ...

    JSP网络编程从基础到实践 实例代码

    实例19 中文字符处理程序示例 第5章 JSP的内置对象 实例20 request常用方法的应用 实例21 获得表单数据 实例22 页面重定向程序示例 实例23 定时刷新页面程序示例 实例24 记住会话的用户名 实例25 猜字母游戏 ...

    JSP网络编程从基础到实践的实例代码

    实例19 中文字符处理程序示例 第5章 JSP的内置对象 实例20 request常用方法的应用 实例21 获得表单数据 实例22 页面重定向程序示例 实例23 定时刷新页面程序示例 实例24 记住会话的用户名 实例25 猜字母游戏 ...

    Spring-Reference_zh_CN(Spring中文参考手册)

    9.9. 公共问题的解决方案 9.9.1. 对一个特定的 DataSource 使用错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 11.1. 简介 ...

    JSP网络编程从基础到实践

    实例13 循环应用综合实例 实例14 一个简单的计数器 实例15 include指令应用示例 实例16 forward应用程序示例 实例17 param应用程序示例 实例18 plugin应用程序示例 实例19 中文字符处理程序...

    Spring 2.0 开发参考手册

    9.9. 公共问题的解决方案 9.9.1. 对一个特定的 DataSource 使用错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 11.1....

    spring chm文档

    9.9. 公共问题的解决方案 9.9.1. 对一个特定的 DataSource 使用错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 11.1....

Global site tag (gtag.js) - Google Analytics