servlet POST 接受数据中文乱码

ccnce 2017-03-03 01:36:11
网上很多方案是:
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");

但是浏览出来还是乱码


POST代码

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
String names=request.getParameter("dddd");
//String str = new String(names.getBytes("ISO-8859-1"),"utf-8");
PrintWriter out = response.getWriter();
out.println("<h1>" + names + "</h1>");
}



我测试过,只能用String str = new String(names.getBytes("ISO-8859-1"),"utf-8");这样才能正常。为什么?
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
为什么无效?
提交页面也是设置了utf-8的,
...全文
177 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ccnce 2017-03-03
  • 打赏
  • 举报
回复
这样就OK了

 request.setCharacterEncoding("UTF-8");    
 //response.setCharacterEncoding("utf-8"); 
 response.setContentType("text/html;charset=utf-8");
解决了
李德胜1995 2017-03-03
  • 打赏
  • 举报
回复
你提交是post乱码吧?用request.setCharacterEncoding("UTF-8");

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧