java解决几种情况下的中文乱码问题

一:form表单的提交:

1:Post方式提交,使用request.setcharacterEncoding("utf-8")可以解决中文乱码,new String(request.getParameter("contractStatus").getBytes("iso-8859-1"), "utf-8")解决不了Post方式提交中文乱码。

2:Get方式提交表单,使用new String(request.getParameter("contractStatus").getBytes("iso-8859-1"), "utf-8")可以解决Get方式提交中文乱码,同时也可以使用在前台encodeURI(encodeURI(String))两次编码,后台使用URLDecoder.decode("string")解码一次解决中文乱码。

二:ajax提交中文到后台:

1:Get方式提交到后台可以使用在前台encodeURI(encodeURI(String))两次编码,后台使用URLDecoder.decode(request.getParameter("name"),"utf-8")解决中文乱码。

2:Post方式提交到后台可以使用在前台encodeURI(encodeURI(String))两次编码,后台使用URLDecoder.decode(request.getParameter("name"),"utf-8")解决中文乱码。

三:a标签提交参数到后台:

只要前后台文件和容器三者编码一直,则可以直接用request.getParameter("String")接受参数且不会乱码。

你可能感兴趣的:(java解决几种情况下的中文乱码问题)