• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
山高我为峰
博客园    首页    新随笔    联系   管理    订阅  订阅
HttpServletResponse输出的中文乱码

HttpServletResponse输出有两种格式,一种是字符流,一种是字节流。

1.字符流

     // 这句话的意思,是让浏览器用utf8来解析返回的数据,即设置客户端解析的编码
        response.setContentType("text/html; chartset=UTF-8");
        //这句话的意思,是告诉servlet用UTF-8转码,而不是用默认的ISO8859 ,即服务端对中文的编码 
        response.setCharacterEncoding("UTF-8");
        PrintWriter printWriter = response.getWriter();
        printWriter.print("中文");

2.字节流

     // 这句话的意思,是让浏览器用utf8来解析返回的数据,即设置客户端解析的编码
        response.setHeader("Content-type", "text/html;charset=UTF-8");
        // response.setContentType("text/html; chartset=UTF-8");  //尝试使用这个设置“Content-type”未成功
        String data = "中文";
        OutputStream ps = response.getOutputStream();
        // 这句话的意思,使得放入流的数据是utf8格式
        ps.write(data.getBytes("utf-8"));

参考:

http://blog.csdn.net/kontrol/article/details/7767983

 

posted on 2015-09-18 21:50  山高我为峰  阅读(451)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3