日期:2014-05-17  浏览次数:20686 次

当用Servlet来处理http请求并产生返回的HTML页面时,如何使HTML页面中的中文字符能够正常显示?
javax.servlet.http.HttpResponse类用于产生返回页面.通过HttpResponse定义的方法getOutputStream()可以获得ServletOutputStream的实例,这样用户就可以利用ServletOutputStream.write方法向输出流中写入返回页面的内容. 但是ServletOutputStream使用的是缺省的编码方式,如果要使返回页面中的中文字 符能够正常显示,最好显示地指定所用的字符编码方式. 通常需要构造一个 OutputStreamWriter , 例程如下: 


   public void doGet (HttpServletRequest req, HttpServletResponse res) 
  throws ServletException, IOException 

  { 

  res.setContentType("text/html"); 

  ServletOutputStream out = res.getOutputStream(); 

  OutputStreamWriter ow = new OutputStreamWriter(out,"GB2312"); 

  ow.write("这是测试"); 

  ow.flush(); 

  ow.close(); 

  }