servlet中get和post的中文乱码解决

本文介绍如何在HTTP请求中处理GET和POST方法的字符编码问题,确保客户端与服务器间正确传递中文等非ASCII字符。通过设置合适的编码格式,避免乱码出现。

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

1 get情况

response.setContentType("text/html; charset=utf-8"); //通知浏览器以utf-8编码格式打开内容

//把输入的默认iso-8859-1格式转换为utf-8

String first_name = request.getParameter("first_name");

first_name = new String(first_name.getBytes("iso-8859-1"),"utf-8");


注:如果需要把中文字符串作为cookie内容使用,需要再对上述的处理结果做转换

String  first_name_ckstr = java.net.URLEncoder.encode(first_name, "utf-8");

读取cookie内容时,需要对应使用解码函数

first_name = java.net.URLDecoder.decode(first_name_ckstr, "utf-8");


2 post情况

  // 设置输入post输入编码类型
  request.setCharacterEncoding("utf-8");  

//通知浏览器以utf-8编码格式打开内容
response.setContentType("text/html; charset=utf-8");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值