java ee服务器使用get方法,接收中文的方法




假设URL地址为:http://192.168.1.4:8080/Hello/servlet/LinkClient?text1=打算的&text2=ljz



request.setCharacterEncoding("ISO-8859-1");

response.setContentType("text/xml;charset=gbk");

response.setCharacterEncoding("gbk");

PrintWriter out = response.getWriter();

//*************这个是重点****************************************

String title = new String(request.getParameter("text1").getBytes("ISO-8859-1"),"utf-8");

String timelength = new String(request.getParameter("text2").getBytes("ISO-8859-1"),"utf-8");

timelength = URLDecoder.decode(timelength, "gbk");

title = URLDecoder.decode(title, "gbk");

out.println("<?xml version=\"1.0\" encoding=\"gbk\" ?>");

out.println("<book>");

out.println("<name>java高级编程</name>");

out.println("  <price>12</price>");

out.println("  <id>111111</id>");

out.println("  <text1>"+title+"</text1>");

out.println("  <text2>"+timelength+"</text2>");

out.println("</book>");

out.flush();

out.close();


进行传递,接收后在后台用

Java代码   收藏代码
  1. java.net.URLEncoder.encode("中文","UTF-8");  

 进行解码即可。

 

 

 

也可以用javascript的方法如

Js代码   收藏代码
  1. var name = encodeURI("中文");  

 

 

 

服务器端接收后也需要转一下码

Java代码   收藏代码
  1. String name=new String(request.getParameter(“name”),”utf-8”);  

 即可.

 

 

 

或者使用

Java代码   收藏代码
  1. String name = new String(request.getParameter("name ").getBytes("iso8859-1"),"utf-8")  

 进行转码.



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值