liuzhuan12519 2010-01-14 14:39
浏览 230
已采纳

在servlet中用流进行下载,下载到csv文件里为乱码,但是记事本打开为正常的!!

在servlet中用流进行下载,下载到csv文件里为乱码,但是记事本打开为正常的!!下面是我的代码的主要部分:
[code="java"]
//要导入的内容串
String conString = userJson.getUserString(domainName, result);

    response.setContentType("application/x-download");
    String filedisplay = userJson.createFileName(domainName) + ".csv";//文件名字
    response.addHeader("Content-Disposition", "attachment;filename="
            + filedisplay);
    try {
        OutputStream out = response.getOutputStream();
        OutputStreamWriter write = new OutputStreamWriter(out);

        write.write(conString);
        write.close();

    } catch (IOException e) {
        e.printStackTrace();
    }

[/code]
PS:服务器为tomcat,编码为UTF-8,我试过在改为response.setContentType("application/x-download;charset=utf-8");乱码依旧;
在服务器后台打印的 System.out.println(conString);也为乱码
请各位帮忙,我的头都大了,差不多每种编码方式都试过了!!
能讲下具体原因就更好 了

  • 写回答

4条回答 默认 最新

  • wanghaolovezlq 2010-01-14 14:52
    关注

    OutputStreamWriter write = new OutputStreamWriter(out,"utf-8");

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?