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();
       }

你可能感兴趣的:(javamail)