Javamail的中文问题

1、收邮件时附件名称为中文时
附件名称为中文时,需要用MimeUtility.decodeText(filename)来解码,这样显示出来的就是正确的中文了
2、附件提供下载时在IE的保存对话框中显示的文件名的中文问题
附件名称显示正确后,点击链接开始下载,IE弹出下载对话框时,还需要将转换好的GB2312码换成ISO8859码,否则
IE的保存对话框中显示的默认文件名还是乱码
如下:

    String filename = p.getFileName();
       filename 
= MimeUtility.decodeText(filename);
       
//再将中文转换为ISO编码送给浏览器
       WebToolkit mykit = WebToolkit.getInstance();
       filename 
= mykit.GB2312Decode_ISO8859Encode(filename);
       response.setHeader(
"Content-Disposition""attachment; filename=" + filename);

       OutputStream out 
= response.getOutputStream();
       InputStream in 
= p.getInputStream();
       
int c = in.read();
       
while (c != -1)
       {
           out.write(c);
           c 
= in.read();
       }
posted @ 2011-03-19 09:59  super119  阅读(267)  评论(0编辑  收藏  举报