首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

自学Servlet_三_response

2013-12-11 
自学Servlet_3_responseresponse解决中文乱码问题://更改response的码表,通知服务器用UTF-8码表去取respon

自学Servlet_3_response
response解决中文乱码问题:

//更改response的码表,通知服务器用UTF-8码表去取response中的数据,然后写给客户机response.setCharacterEncoding("UTF-8");  //通知浏览器以UTF-8码表打开回送的数据//response.setHeader("content-type", "text/html;charset=UTF-8");response.setContentType("text/html;charset=UTF-8");String data = "中国";PrintWriter writer = response.getWriter();writer.write(data);


实现中文文件下载(重点)
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//1.获取需要下载的文件String path = this.getServletContext().getRealPath("/download/日本妞.jpg");String filename = path.substring(path.lastIndexOf("\")+1);//2.通知浏览器以下载方式打开  (下载的中文文件名必须要给过URL编码)response.setHeader("content-disposition", "attachment;filename="+URLEncoder.encode(filename, "UTF-8"));//3.向浏览器写出数据//传输数据的模板代码FileInputStream in = null;try{OutputStream out = response.getOutputStream();in = new FileInputStream(path);byte buffer[] = new byte[1024];int len = 0;while((len=in.read(buffer))>0){out.write(buffer,0,len);}}finally{if(in!=null){in.close();}}}

热点排行