基于HttpClient的Android客户端的设计与实现
eValuePair("textBox2",pwd),new NameValuePair("Button1",""),new NameValuePair("lbLanguage","")});/*获取cookie*/client.executeMethod(post);Cookie cookies[]=client.getState().getCookies(); //得到cookiesfor(int i=0; iif(i==0) {cookie=cookies[i].toString();}else {cookie+=cookies[i]+";";}}3.2 中文乱码问题的解决在实际开发中,以上代码获得的content可能会出现中文乱码。在开发这类客户端时,中文编码往往是个很具难度的问题。由于中文网页的编码可能是UTF-8或GB2312格式的,如果没有采用对应的编码格式进行解析,则会产生乱码的问题。据调查,80%以上的网页都没有设置response Header的charset,所以直接通过HttpClient获取charset是不可靠的;但是99%的网页设置了meta元素的charset,所以可以先根据一个默认编码(ISO-8859-1)获得HTML文档,再根据Jsoup或正则表达式获得该文档的charset。因此以上代码中若有中文参数,可将new NameValuePair("value_name" ,”中文”);修改为new NameValuePair("value_name", new String(“中文”.getBytes(),"ISO-8859-1"
<<上一页 下一页>>
广州市越秀区图书馆版权所有。
联系电话:020-87673002
本站访问人数: