首先,如果你是在地址栏里输入参数时,意味着数据是伴随着消息头传递过去的,就是用get方法传递数据的。浏览器会自动将其转换成十六进制编码。
其次,后台接收的时候只能用request.getParamerter("")取值。
此时如果你的web服务接收数据时默认的字符集是Iso-8859-1,那么
第一种办法:
String test = req.getParameter("test");
test = new String(test.getBytes("iso-8859-1"),浏览器编码格式);
你就可以获取到中文了。
第二种办法:
String qs = req.getQueryString();//直接获取到十六进制数据(十六进制的格式是:%xy)
qs = URLDecoder.decode(qs,浏览器编码格式);//翻译十六进制的字符串
其次,后台接收的时候只能用request.getParamerter("")取值。
此时如果你的web服务接收数据时默认的字符集是Iso-8859-1,那么
第一种办法:
String test = req.getParameter("test");
test = new String(test.getBytes("iso-8859-1"),浏览器编码格式);
你就可以获取到中文了。
第二种办法:
String qs = req.getQueryString();//直接获取到十六进制数据(十六进制的格式是:%xy)
qs = URLDecoder.decode(qs,浏览器编码格式);//翻译十六进制的字符串