android请求服务器 用volley向服务器发送请求,在服务器端接收数据为中文乱码,怎么解决啊

strut2服务器与android交互数据
libs如图:
&?xml version=&1.0& encoding=&UTF-8&?&&
&web-app version=&2.5& xmlns=&/xml/ns/javaee&&
&&& xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance&&
&&& xsi:schemaLocation=&/xml/ns/javaee&&&& /xml/ns/javaee/web-app_2_5.xsd&&&
&&& &!-- 定义Struts2的核心控制器:FilterDispatcher --&&
&&& &filter&&
&&&&&&& &!-- 定义核心Filter的名称 --&&
&&&&&&& &filter-name&struts2&/filter-name&&
&&&&&&& &!-- 定义Filter的实现类 --&&
&&&&&&& &filter-class&org.apache.struts2.dispatcher.FilterDispatcher&/filter-class&&
&&& &/filter&&
&&& &filter-mapping&&
&&&&&&& &filter-name&struts2&/filter-name&&
&&&&&&& &url-pattern&/*&/url-pattern&&
&&& &/filter-mapping&&
&&& &welcome-file-list&&
&&&&&&& &welcome-file&index.jsp&/welcome-file&&
&&& &/welcome-file-list&&
&/web-app&&&
&?xml version=&1.0& encoding=&UTF-8&?&
&web-app version=&2.5& xmlns=&/xml/ns/javaee&
&xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance&
&xsi:schemaLocation=&/xml/ns/javaee&&&& /xml/ns/javaee/web-app_2_5.xsd&&
&&!-- 定义Struts2的核心控制器:FilterDispatcher --&
&&&!-- 定义核心Filter的名称 --&
&&&filter-name&struts2&/filter-name&
&&&!-- 定义Filter的实现类 --&
&&&filter-class&org.apache.struts2.dispatcher.FilterDispatcher&/filter-class&
&&/filter&
&&filter-mapping&
&&&filter-name&struts2&/filter-name&
&&&url-pattern&/*&/url-pattern&
&&/filter-mapping&
&&welcome-file-list&
&&&welcome-file&index.jsp&/welcome-file&
&&/welcome-file-list&
&/web-app&
struts.xml:
&?xml version=&1.0& encoding=&UTF-8&?&&
&!DOCTYPE struts PUBLIC&
&&& &-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&&
&&& &http://struts.apache.org/dtds/struts-2.0.dtd&&&
&&& &constant name=&struts.i18n.encoding& value=&utf-8&&&/constant&&
&&& &constant name=&struts.enable.DynamicMethodInvocation& value=&true&&&/constant&&
&&& &package name=&default& extends=&json-default& namespace=&/&&&
&&&&&&& &action name=&getjson& class=&com.zte.android.LoginAction&&
&&&&&&&&&&& method=&login&&&
&&&&&&&&&&& &result type=&json&&&/result&&
&&&&&&& &/action&&
&&& &/package&&
&/struts&&
&?xml version=&1.0& encoding=&UTF-8&?&
&!DOCTYPE struts PUBLIC
&&& &-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&
&&& &http://struts.apache.org/dtds/struts-2.0.dtd&&
&&constant name=&struts.i18n.encoding& value=&utf-8&&&/constant&
&&constant name=&struts.enable.DynamicMethodInvocation& value=&true&&&/constant&
&&package name=&default& extends=&json-default& namespace=&/&&
&&&action name=&getjson& class=&com.zte.android.LoginAction&
&&&method=&login&&
&&&&result type=&json&&&/result&
&&&/action&
&&/package&
Student.java
package com.zte.&
public class Student&
&&& private S&
&&& private S&
&&& private S&
&&& private S&
&&& public String getName()&
&&& public void setName(String name)&
&&&&&&& this.name =&
&&& public String getAge()&
&&& public void setAge(String age)&
&&&&&&& this.age =&
&&& public String getSchool()&
&&& public void setSchool(String school)&
&&&&&&& this.school =&
&&& public String getPhone()&
&&& public void setPhone(String phone)&
&&&&&&& this.phone =&
package com.zte.
public class Student
&private S
&private S
&private S
&private S
&public String getName()
&public void setName(String name)
&&this.name =
&public String getAge()
&public void setAge(String age)
&&this.age =
&public String getSchool()
&public void setSchool(String school)
&&this.school =
&public String getPhone()
&public void setPhone(String phone)
&&this.phone =
Login.action:
package com.zte.&
import java.io.IOE&
import java.io.UnsupportedEncodingE&
import java.util.ArrayL&
import java.util.L&
import javax.servlet.http.HttpServletR&
import javax.servlet.http.HttpServletR&
import org.apache.struts2.interceptor.ServletRequestA&
import org.apache.struts2.interceptor.ServletResponseA&
import com.google.gson.G&
import com.opensymphony.xwork2.ActionS&
public class LoginAction extends ActionSupport implements ServletRequestAware,&
&&&&&&& ServletResponseAware&
&&& /** * */&
&&& private static final long serialVersionUID = 1L;&
&&& HttpServletR&
&&& HttpServletR&
&&& private S&
&&& private S&
&&& public String getPassword()&
&&& public void setPassword(String password)&
&&&&&&& this.password =&
&&& public String getUsername()&
&&& public void setUsername(String username)&
&&&&&&& this.username =&
&&& public void setServletRequest(HttpServletRequest request)&
&&&&&&& this.request =&
&&& public void setServletResponse(HttpServletResponse response)&
&&&&&&& this.response =&
&&&& * 模拟用户登录的业务&
&&& public void login()&
&&&&&&& returnUserInfo();&
&&& private void returnUserInfo()&
&&&&&&& this.response.setContentType(&text/charset=utf-8&);&
&&&&&&& this.response.setCharacterEncoding(&UTF-8&);&
&&&&&&& S&
&&&&&&& if (username == null || password == null)&
&&&&&&& {&
&&&&&&&&&&& json = &请求参数错误&;&
&&&&&&&&&&& flushData(json);&
&&&&&&&&&&&&
&&&&&&& }&
&&&&&&& if (username.equals(&123&) && password.equals(&123&))&
&&&&&&& {&
&&&&&&&&&&& List&Student& list = new ArrayList&Student&();&
&&&&&&&&&&& Gson gson = new Gson();&
&&&&&&&&&&& for (int i = 0; i & 10; i++)&
&&&&&&&&&&& {&
&&&&&&&&&&&&&&& Student st = new Student();&
&&&&&&&&&&&&&&& st.setAge(&10& + i);&
&&&&&&&&&&&&&&& st.setName(&csh& + i);&
&&&&&&&&&&&&&&& st.setPhone(&1333007& + i);&
&&&&&&&&&&&&&&& st.setSchool(&abc& + i);&
&&&&&&&&&&&&&&& list.add(st);&
&&&&&&&&&&& }&
&&&&&&&&&&& json = gson.toJson(list);&
&&&&&&& }&
&&&&&&& else&
&&&&&&& {&
&&&&&&&&&&& json = &非法登陆信息!&;&
&&&&&&& }&
&&&&&&& flushData(json);&
&&& private void flushData(String json)&
&&&&&&& byte[] jsonB&
&&&&&&& try&
&&&&&&& {&
&&&&&&&&&&& jsonBytes = json.getBytes(&utf-8&);&
&&&&&&&&&&& response.setContentLength(jsonBytes.length);&
&&&&&&&&&&& response.getOutputStream().write(jsonBytes);&
&&&&&&&&&&& response.getOutputStream().flush();&
&&&&&&& }&
&&&&&&& catch (UnsupportedEncodingException e)&
&&&&&&& {&
&&&&&&&&&&& e.printStackTrace();&
&&&&&&& }&
&&&&&&& catch (IOException e)&
&&&&&&& {&
&&&&&&&&&&& e.printStackTrace();&
&&&&&&& }&
&&&&&&& finally&
&&&&&&& {&
&&&&&&&&&&& try&
&&&&&&&&&&& {&
&&&&&&&&&&&&&&& response.getOutputStream().close();&
&&&&&&&&&&& }&
&&&&&&&&&&& catch (IOException e)&
&&&&&&&&&&& {&
&&&&&&&&&&&&&&& e.printStackTrace();&
&&&&&&&&&&& }&
&&&&&&& }&
package com.zte.
import java.io.IOE
import java.io.UnsupportedEncodingE
import java.util.ArrayL
import java.util.L
import javax.servlet.http.HttpServletR
import javax.servlet.http.HttpServletR
import org.apache.struts2.interceptor.ServletRequestA
import org.apache.struts2.interceptor.ServletResponseA
import com.google.gson.G
import com.opensymphony.xwork2.ActionS
public class LoginAction extends ActionSupport implements ServletRequestAware,
&&ServletResponseAware
&private static final long serialVersionUID = 1L;
&HttpServletR
&HttpServletR
&private S
&private S
&public String getPassword()
&public void setPassword(String password)
&&this.password =
&public String getUsername()
&public void setUsername(String username)
&&this.username =
&public void setServletRequest(HttpServletRequest request)
&&this.request =
&public void setServletResponse(HttpServletResponse response)
&&this.response =
& * 模拟用户登录的业务
&public void login()
&&returnUserInfo();
&private void returnUserInfo()
&&this.response.setContentType(&text/charset=utf-8&);
&&this.response.setCharacterEncoding(&UTF-8&);
&&if (username == null || password == null)
&&&json = &请求参数错误&;
&&&flushData(json);
&&if (username.equals(&123&) && password.equals(&123&))
&&&List&Student& list = new ArrayList&Student&();
&&&Gson gson = new Gson();
&&&for (int i = 0; i & 10; i++)
&&&&Student st = new Student();
&&&&st.setAge(&10& + i);
&&&&st.setName(&csh& + i);
&&&&st.setPhone(&1333007& + i);
&&&&st.setSchool(&abc& + i);
&&&&list.add(st);
&&&json = gson.toJson(list);
&&&json = &非法登陆信息!&;
&&flushData(json);
&private void flushData(String json)
&&byte[] jsonB
&&&jsonBytes = json.getBytes(&utf-8&);
&&&response.setContentLength(jsonBytes.length);
&&&response.getOutputStream().write(jsonBytes);
&&&response.getOutputStream().flush();
&&catch (UnsupportedEncodingException e)
&&&e.printStackTrace();
&&catch (IOException e)
&&&e.printStackTrace();
&&&&response.getOutputStream().close();
&&&catch (IOException e)
&&&&e.printStackTrace();
网页ajax请求:
&%@ page language=&java& import=&java.util.*& pageEncoding=&utf-8&%&&
&&& String path = request.getContextPath();&
&&& String basePath = request.getScheme() + &://&&
&&&&&&&&&&& + request.getServerName() + &:& + request.getServerPort()&
&&&&&&&&&&& + path + &/&;&
&!DOCTYPE HTML PUBLIC &-//W3C//DTD HTML 4.01 Transitional//EN&&&
&base href=&&%=basePath%&&&&
&title&My JSP 'index.jsp' starting page&/title&&
&meta http-equiv=&pragma& content=&no-cache&&&
&meta http-equiv=&cache-control& content=&no-cache&&&
&meta http-equiv=&expires& content=&0&&&
&meta http-equiv=&keywords& content=&keyword1,keyword2,keyword3&&&
&meta http-equiv=&description& content=&This is my page&&&
&&& &link rel=&stylesheet& type=&text/css& href=&styles.css&&
&script type=&text/javascript&&&
&&& var xmlHttpR //用于保存XMLHttpRequest对象的全局变量&&&
&&& //用于创建XMLHttpRequest对象&&&
&&& function createXmlHttp() {&
&&&&&&& //根据window.XMLHttpRequest对象是否存在使用不同的创建方式&&&
&&&&&&& if (window.XMLHttpRequest) {&
&&&&&&&&&&& xmlHttp = new XMLHttpRequest(); //FireFox、Opera等支持的创建方式&&&
&&&&&&& } else {&
&&&&&&&&&&& xmlHttp = new ActiveXObject(&Microsoft.XMLHTTP&);//IE浏览器支持的创建方式&&&
&&&&&&& }&
&&& function loadAjax() {&
&&&&&&& createXmlHttp(); //创建XmlHttpRequest对象&&&
&&&&&&& var url = &http://localhost:8080/ssh2ToAndroid/getjson.action?userName=admin&password=123456&;&
&&&&&&& xmlHttpReq.open(&GET&, url, true);&
&&&&&&& xmlHttpReq.onreadystatechange = loadC //IE这里设置回调函数&&&
&&&&&&& xmlHttpReq.send(null);&
&&& function loadCallback() {&
&&&&&&& alert(xmlHttpReq.readyState);&
&&&&&&& if (xmlHttpReq.readyState == 4) {&
&&&&&&&&&&& if (xmlHttpReq.status == 200) {&
&&&&&&&&&&&&&&& document.getElementById(&contentDiv&).innerHTML = xmlHttpReq.responseT&
&&&&&&&&&&& }&
&&&&&&& }&
&/script&&
&&& &div id=&contentTypeDiv&&&/div&&
&&& &br /&&
&&& &br /&&
&&& &div id=&contentDiv&&&/div&&
&&& &input type=&button& value=&请求数据& onclick=&loadAjax()&&&
&%@ page language=&java& import=&java.util.*& pageEncoding=&utf-8&%&
&String path = request.getContextPath();
&String basePath = request.getScheme() + &://&
&&&+ request.getServerName() + &:& + request.getServerPort()
&&&+ path + &/&;
&!DOCTYPE HTML PUBLIC &-//W3C//DTD HTML 4.01 Transitional//EN&&
&base href=&&%=basePath%&&&
&title&My JSP 'index.' starting page&/title&
&meta http-equiv=&pragma& content=&no-cache&&
&meta http-equiv=&cache-control& content=&no-cache&&
&meta http-equiv=&expires& content=&0&&
&meta http-equiv=&keywords& content=&keyword1,keyword2,keyword3&&
&meta http-equiv=&description& content=&This is my page&&
&&link rel=&stylesheet& type=&text/css& href=&styles.css&&
&script type=&text/javascript&&
&var xmlHttpR //用于保存XMLHttpRequest对象的全局变量&
&//用于创建XMLHttpRequest对象&
&function createXmlHttp() {
&&//根据window.XMLHttpRequest对象是否存在使用不同的创建方式&
&&if (window.XMLHttpRequest) {
&&&xmlHttp = new XMLHttpRequest(); //FireFox、Opera等浏览器支持的创建方式&
&&} else {
&&&xmlHttp = new ActiveXObject(&Microsoft.XMLHTTP&);//IE浏览器支持的创建方式&
&function loadAjax() {
&&createXmlHttp(); //创建XmlHttpRequest对象&
&&var url = &http://localhost:8080/ssh2ToAndroid/getjson.action?userName=admin&password=123456&;
&&xmlHttpReq.open(&GET&, url, true);
&&xmlHttpReq.onreadystatechange = loadC //IE这里设置回调函数&
&&xmlHttpReq.send(null);
&function loadCallback() {
&&alert(xmlHttpReq.readyState);
&&if (xmlHttpReq.readyState == 4) {
&&&if (xmlHttpReq.status == 200) {
&&&&document.getElementById(&contentDiv&).innerHTML = xmlHttpReq.responseT
&&div id=&contentTypeDiv&&&/div&
&&div id=&contentDiv&&&/div&
&&input type=&button& value=&请求数据& onclick=&loadAjax()&&
android请求数据:
package com.zte.android.greenweb.launcher.&
import java.io.BufferedR&
import java.io.IOE&
import java.io.InputS&
import java.io.InputStreamR&
import java.io.OutputS&
import java.io.UnsupportedEncodingE&
import java.net.HttpURLC&
import java.net.URL;&
import com.zte.android.greenweb.launcher.util.LogEx;&
import com.zte.android.greenweb.launcher.util.NetC&
public class HttpConnectionClient&
&&& public static final String HTTP_REQUEST_METHOD_GET = &GET&;&
&&& public static final String HTTP_REQUEST_METHOD_POST = &POST&;&
&&& private HttpURLConnection conn =&
&&&& * 发送请求到http服务然后接收返回报文&
&&&& * @param path&
&&&& *&&&&&&&&&&& 请求的http服务的路径&
&&&& * @return 返回请求的响应信息&
&&&& * @throws IOException&
&&& public int doGet(String path) throws IOException&
&&&&&&& URL url = new URL(path);&
&&&&&&& // openConnection() 返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接&
&&&&&&& conn = (HttpURLConnection) url.openConnection();// 打开一个连接&
&&&&&&& conn.setRequestMethod(HTTP_REQUEST_METHOD_GET);// 设置get方式请求&
&&&&&&& conn.setConnectTimeout(NetConst.CONNECTED_TIME_OUT);&
&&&&&&& conn.setReadTimeout(NetConst.READ_TIME_OUT);&
&&&&&&& // 打算使用 URL 连接进行输出,则将 DoOutput 标志设置为 true&
&&&&&&& conn.setDoOutput(true);&
&&&&&&& // 这里只设置内容类型与内容长度的头字段根据传送内容决定&
&&&&&&& // 内容类型Content-Type:&
&&&&&&& // application/x-www-form-urlencoded、text/charset=GBK&
&&&&&&& // 内容长度Content-Length: 38&
&&&&&&& conn.setRequestProperty(&Content-Type&, &text/charset=UTF-8&);&
&&&&&&& conn.setRequestProperty(&Charset&, &UTF-8&);&
&&&&&&& // 保存调用http服务后的响应信息&
&&&&&&& return conn.getResponseCode();&
&&&& * 发送请求到http服务然后接收返回报文&
&&&& * @param jsonStr&
&&&& *&&&&&&&&&&& 请求的json格式的字符串&
&&&& * @param path&
&&&& *&&&&&&&&&&& 请求的http服务的路径&
&&&& * @return 返回请求的响应信息&
&&&& * @throws IOException&
&&& public int doPost(String jsonStr, String path) throws IOException&
&&&&&&& LogEx.d(&doPost request=&+jsonStr);&
&&&&&&& // 得到请求报文的二进制数据&
&&&&&&& byte[] data = jsonStr.getBytes();&
&&&&&&& URL url = new URL(path);&
&&&&&&& // 打开一个连接&
&&&&&&& conn = (HttpURLConnection) url.openConnection();&
&&&&&&& // 设置post方式请求&
&&&&&&& conn.setRequestMethod(HTTP_REQUEST_METHOD_POST);&
&&&&&&& conn.setConnectTimeout(NetConst.CONNECTED_TIME_OUT);&
&&&&&&& conn.setReadTimeout(NetConst.READ_TIME_OUT);&
&&&&&&& // 打算使用 URL 连接进行输出,则将 DoOutput 标志设置为 true&
&&&&&&& conn.setDoOutput(true);&
&&&&&&& conn.setDoInput(true);&
&&&&&&& // 这里只设置内容类型与内容长度的头字段根据传送内容决定&
&&&&&&& // 内容类型Content-Type:&
&&&&&&& // application/x-www-form-urlencoded、text/charset=GBK&
&&&&&&& // 内容长度Content-Length: 38&
&&&&&&& conn.setRequestProperty(&Content-Type&, &text/charset=UTF-8&);&
&&&&&&& conn.setRequestProperty(&Charset&, &UTF-8&);&
&&&&&&& conn.setRequestProperty(&Content-Length&, String.valueOf(data.length));&
&&&&&&& OutputStream outStream = conn.getOutputStream();// 返回写入到此连接的输出流&
&&&&&&& // 把二进制数据写入是输出流&
&&&&&&& outStream.write(data);&
&&&&&&& // 内存中的数据刷入&
&&&&&&& outStream.flush();&
&&&&&&& // 关闭流&
&&&&&&& outStream.close();&
&&&&&&& int ic = 0;&
&&&&&&& ic = conn.getResponseCode();&
&&& public String getContent() throws UnsupportedEncodingException, IOException&
&&&&&&& if (null == conn)&
&&&&&&& {&
&&&&&&&&&&&&
&&&&&&& }&
&&&&&&& // 保存调用http服务后的响应信息&
&&&&&&& String msg = &&;&
&&&&&&& // 如果请求响应码是200,则表示成功&
&&&&&&& if (conn.getResponseCode() == NetConst.NET_CONNECTED_SUCCESS)&
&&&&&&& {&
&&&&&&&&&&& // HTTP服务端返回的编码是UTF-8,故必须设置为UTF-8,保持编码统一,否则会出现中文乱码&
&&&&&&&&&&& BufferedReader in =&
&&&&&&&&&&&&&&&&&&& new BufferedReader(new InputStreamReader(&
&&&&&&&&&&&&&&&&&&&&&&&&&&& (InputStream) conn.getInputStream(), &UTF-8&));// 返回从此打开的连接读取的输入流&
&&&&&&&&&&& msg = in.readLine();&
&&&&&&&&&&& in.close();&
&&&&&&& }&
&&&&&&& // 断开连接&
&&&&&&& conn.disconnect();&
&&&&&&& LogEx.d(&doPost getContent=&+msg);&
package com.zte.android.greenweb.launcher.
import java.io.BufferedR
import java.io.IOE
import java.io.InputS
import java.io.InputStreamR
import java.io.OutputS
import java.io.UnsupportedEncodingE
import java.net.HttpURLC
import java.net.URL;
import com.zte.android.greenweb.launcher.util.LogEx;
import com.zte.android.greenweb.launcher.util.NetC
public class HttpConnectionClient
&public static final String HTTP_REQUEST_METHOD_GET = &GET&;
&public static final String HTTP_REQUEST_METHOD_POST = &POST&;
&private HttpURLConnection conn =
& * 发送请求到http服务然后接收返回报文
& * @param path
& *&&&&&&&&&&& 请求的http服务的路径
& * @return 返回请求的响应信息
& * @throws IOException
&public int doGet(String path) throws IOException
&&URL url = new URL(path);
&&// openConnection() 返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接
&&conn = (HttpURLConnection) url.openConnection();// 打开一个连接
&&conn.setRequestMethod(HTTP_REQUEST_METHOD_GET);// 设置get方式请求
&&conn.setConnectTimeout(NetConst.CONNECTED_TIME_OUT);
&&conn.setReadTimeout(NetConst.READ_TIME_OUT);
&&// 打算使用 URL 连接进行输出,则将 DoOutput 标志设置为 true
&&conn.setDoOutput(true);
&&// 这里只设置内容类型与内容长度的头字段根据传送内容决定
&&// 内容类型Content-Type:
&&// application/x-www-form-urlencoded、text/charset=GBK
&&// 内容长度Content-Length: 38
&&conn.setRequestProperty(&Content-Type&, &text/charset=UTF-8&);
&&conn.setRequestProperty(&Charset&, &UTF-8&);
&&// 保存调用http服务后的响应信息
&&return conn.getResponseCode();
& * 发送请求到http服务然后接收返回报文
& * @param jsonStr
& *&&&&&&&&&&& 请求的json格式的字符串
& * @param path
& *&&&&&&&&&&& 请求的http服务的路径
& * @return 返回请求的响应信息
& * @throws IOException
&public int doPost(String jsonStr, String path) throws IOException
&&LogEx.d(&doPost request=&+jsonStr);
&&// 得到请求报文的二进制数据
&&byte[] data = jsonStr.getBytes();
&&URL url = new URL(path);
&&// 打开一个连接
&&conn = (HttpURLConnection) url.openConnection();
&&// 设置post方式请求
&&conn.setRequestMethod(HTTP_REQUEST_METHOD_POST);
&&conn.setConnectTimeout(NetConst.CONNECTED_TIME_OUT);
&&conn.setReadTimeout(NetConst.READ_TIME_OUT);
&&// 打算使用 URL 连接进行输出,则将 DoOutput 标志设置为 true
&&conn.setDoOutput(true);
&&conn.setDoInput(true);
&&// 这里只设置内容类型与内容长度的头字段根据传送内容决定
&&// 内容类型Content-Type:
&&// application/x-www-form-urlencoded、text/charset=GBK
&&// 内容长度Content-Length: 38
&&conn.setRequestProperty(&Content-Type&, &text/charset=UTF-8&);
&&conn.setRequestProperty(&Charset&, &UTF-8&);
&&conn.setRequestProperty(&Content-Length&, String.valueOf(data.length));
&&OutputStream outStream = conn.getOutputStream();// 返回写入到此连接的输出流
&&// 把二进制数据写入是输出流
&&outStream.write(data);
&&// 内存中的数据刷入
&&outStream.flush();
&&// 关闭流
&&outStream.close();
&&int ic = 0;
&&ic = conn.getResponseCode();
&public String getContent() throws UnsupportedEncodingException, IOException
&&if (null == conn)
&&// 保存调用http服务后的响应信息
&&String msg = &&;
&&// 如果请求响应码是200,则表示成功
&&if (conn.getResponseCode() == NetConst.NET_CONNECTED_SUCCESS)
&&&// HTTP服务端返回的编码是UTF-8,故必须设置为UTF-8,保持编码统一,否则会出现中文乱码
&&&BufferedReader in =
&&&&&new BufferedReader(new InputStreamReader(
&&&&&&&(InputStream) conn.getInputStream(), &UTF-8&));// 返回从此打开的连接读取的输入流
&&&msg = in.readLine();
&&&in.close();
&&// 断开连接
&&conn.disconnect();
&&LogEx.d(&doPost getContent=&+msg);
最近在学ssh2框架,很多不懂,放着以后看看。有些代码参照网络的。
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。android客户端向服务器提交请求的中文乱码问题 - 下载频道
- CSDN.NET
&&&&android客户端向服务器提交请求的中文乱码问题
android客户端向服务器提交请求的中文乱码问题
android客户端向服务器提交请求的中文乱码问题
嵌到我的页面
<input type="text" readonly="true" value="">
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
您可能还需要
移动开发下载排行}

我要回帖

更多关于 android请求服务器 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信