java 输出乱码的问题
通过获取网页的指定数据,返回给调用者,结果输出是乱码。网页的中文编码是<metahttp-equiv="Content-Type"content="text/html;c...
通过获取网页的指定数据,返回给调用者,结果输出是乱码。网页的中文编码是<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> ,该怎样才能输出中文呢?请知道的朋友帮帮忙,谢谢!
展开
4个回答
展开全部
一:
页面(jsp页面)设置:
<%@ page language="java" contentType="text/html; charset=GBK"%> <!--写在最顶端-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
二:
后台设置:
1:
response.setContentType("text/html;charset=GBK");
request.setCharacterEncoding("GBK"); //设置request对象解码是的编码.只针对POST请求 有用,get请求无效
2:
如果是表单提交:
URLDecoder.decode(str,"GBK");//读取时进行编码
URLEncoder.encode(str,"GBK");//按指定编码输出str;
如果jsp页面设置编码为GBK时,则对获取的request对象进行转码. 如果还是没用,则用URLDecoder或URLEncoder进行强转.
页面(jsp页面)设置:
<%@ page language="java" contentType="text/html; charset=GBK"%> <!--写在最顶端-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
二:
后台设置:
1:
response.setContentType("text/html;charset=GBK");
request.setCharacterEncoding("GBK"); //设置request对象解码是的编码.只针对POST请求 有用,get请求无效
2:
如果是表单提交:
URLDecoder.decode(str,"GBK");//读取时进行编码
URLEncoder.encode(str,"GBK");//按指定编码输出str;
如果jsp页面设置编码为GBK时,则对获取的request对象进行转码. 如果还是没用,则用URLDecoder或URLEncoder进行强转.
更多追问追答
追问
可能大家都误会啦,我没有做这个网页,这个网页,我只是在百度上随便打开的,然后只是去获取它里面的数据而已。
追答
那用这个
String name=new String("网页上获取的数据".getByte("ISO-8859-1"));
看看是不是乱码.
展开全部
如果返回到前台的数据乱码,一般情况下是后台数据已经乱码
如果说是前台数据返回给后台乱码,最简单的解决方法,
转型: String name=new String(request.getParameter("name").getByte("ISO-8859-1"));
如果说是前台数据返回给后台乱码,最简单的解决方法,
转型: String name=new String(request.getParameter("name").getByte("ISO-8859-1"));
更多追问追答
追问
我这里没有什么后台的,我只是通过正则表达式,去匹配网页上的指定数据,返回给调用者。
追答
java 正则表达式 ?JS正则表达式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<%
request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
%>
都加上这个
request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
%>
都加上这个
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你主要查查,后台的编码格式也是gb2312 ? 后台取到的数据是不是就是乱码?
追问
怎么查看后台的编码? 我这是在网上随便找个网页,然后获取出来的数据,该怎么查看呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询