Content-Type响应头,设置码表

本文详细介绍了如何解决HTTP响应中的乱码问题,探讨了乱码产生的根本原因,并提供了具体的解决方案,包括设置正确的字符集编码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

	1.Content-Type响应头的作用
		1.设置了response使用的码表
		2.通知了浏览器使用指定的码表去解码。
	2.常用的方法:
		setHeader(头名称,值);
		setContentType(值); 
	3.乱码的根本原因
		reponse默认使用iso8859-1进行编码,浏览器默认使用utf-8或者gbk解码,因此有乱码。		
		解决方案:让reponse和浏览器使用统一的码表进行编码
	4.代码
		public class ContentTypeServlet extends HttpServlet {
		 
			public void doGet(HttpServletRequest request, HttpServletResponse response)
					throws ServletException, IOException {
	//对浏览器输出一段中文   ,  getByte() 默认使用 系统默认的码表(gbk)码表进行编码, 我们的谷歌浏览器默认也是使用了系统默认码表进行解码。
			/*	OutputStream out = response.getOutputStream();
				out.write("中国".getBytes());
			*/
				
				//设置response使用的码表
				//response.setCharacterEncoding("UTF-8");
				//通过设置Content-Type响应头实现response与浏览器使用统一码表。    
				/*
				 * Content-Type作用:
				 * 			1. 设置了repsonse使用的码表。
				 * 			2. 通知了浏览使用何种码表去解码。
				 */
				//原始的方式:response.setHeader("Content-Type", "text/html;charset=gbk");
				/* 改良的方式*/
			       response.setContentType("text/html;charset=gbk");
				PrintWriter out = response.getWriter();
				out.write("中国");
			}
		 
			public void doPost(HttpServletRequest request, HttpServletResponse response)
					throws ServletException, IOException {
				doGet(request, response);
			}
		}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值