解决httpclient返回中文有部分乱码的情况
2016-03-17 12:13
471 查看
转自:/article/7656705.html
[java] view
plain copy
print?
import java.io.IOException;
import java.io.InputStream;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
public class HttpClientUtil {
public static String sendGet(String url,String data) throws ClientProtocolException, IOException
{
// 创建HttpClient实例
HttpClient httpclient = new DefaultHttpClient();
// 创建Get方法实例
HttpGet httpgets = new HttpGet(url+data);
HttpResponse response = httpclient.execute(httpgets);
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instreams = entity.getContent();
String str = convertStreamToString(instreams);
httpgets.abort();
return str;
}
return null;
}
public static String convertStreamToString(InputStream is) {
StringBuilder sb1 = new StringBuilder();
byte[] bytes = new byte[4096];
int size = 0;
try {
while ((size = is.read(bytes)) > 0) {
String str = new String(bytes, 0, size, "UTF-8");
sb1.append(str);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return sb1.toString();
}
}
是完整代码。
java 简单的HttpClient工具类,解决返回中文有部分乱码的情况
[java] viewplain copy
print?
import java.io.IOException;
import java.io.InputStream;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
public class HttpClientUtil {
public static String sendGet(String url,String data) throws ClientProtocolException, IOException
{
// 创建HttpClient实例
HttpClient httpclient = new DefaultHttpClient();
// 创建Get方法实例
HttpGet httpgets = new HttpGet(url+data);
HttpResponse response = httpclient.execute(httpgets);
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instreams = entity.getContent();
String str = convertStreamToString(instreams);
httpgets.abort();
return str;
}
return null;
}
public static String convertStreamToString(InputStream is) {
StringBuilder sb1 = new StringBuilder();
byte[] bytes = new byte[4096];
int size = 0;
try {
while ((size = is.read(bytes)) > 0) {
String str = new String(bytes, 0, size, "UTF-8");
sb1.append(str);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return sb1.toString();
}
}
是完整代码。
相关文章推荐
- HttpClient SSL示例(转)
- NSHTTPCookie
- 使用NSURLSession发起HTTPS网络请求
- OkHttp的性能指标拦截(首包,剩余包时间,resultCode)
- 女网络工程师工作学习交流群,群号码:296239702
- iOS系统网络抓包方法
- 完美解决failed to open stream: HTTP request failed!(file_get_contents引起的)
- 文件分包网络传输Demo
- TCP/IP四层模型和OSI七层模型的概念
- iOS通过http post上传图片
- python网络学习(05)
- Https传输中加密和密钥交换涉及到的算法总结与介绍
- xcode7.2 App Transport Security has blocked a cleartext HTTP 报错解决办法
- http 中文问题
- 用Okhttp框架登录之后的Cookie设置到webView中
- HttpServletResponse addHeader() 与 setHeader() 区别
- android 从网络加载图片并显示
- HTTPS的七个误解
- python网络学习(04)
- HTTPS单向认证和双向认证