一、Response的Outputstream输出中文的问题
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //response的outputStream输出数据的问题 //方法一:程序以什么码表输出,一定要控制浏览器以什么码表打开 String date="中国"; OutputStream out=response.getOutputStream(); //方法二:<meta>标签模拟一个http响应头 out.write("<meta http-equiv=‘content-type‘ content=‘text/html;charset=UTF-8‘>".getBytes()); out.write(date.getBytes("UTF-8")); }
二、通过response的writer流输出数据的问题
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //设置response类使用的码表,以控制response以什么码表向浏览器写出数据 response.setCharacterEncoding("UTF-8"); //指定浏览器以什么码表打开服务器发送的数据 response.setHeader("content-type", "text/html;charset=UTF-8"); String date="中国"; PrintWriter out=response.getWriter(); out.write(date); }
也可以使用一句代码来设置:
response.setContentType("text/html;charset=UTF-8");
时间: 2024-10-10 04:59:54