httpclient get请求返回的数据乱码?跪求大神帮帮我..下面是代码,就是一个调用接口返回天气预报json数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了httpclient get请求返回的数据乱码?跪求大神帮帮我..下面是代码,就是一个调用接口返回天气预报json数据相关的知识,希望对你有一定的参考价值。

public class weatherTest
public static void main(String[] args) throws Exception
String u = URLEncoder.encode("重庆","UTF-8");
String url = "http://wthrcdn.etouch.cn/weather_mini?city="+u;
String post = get(url);
System.out.println(post);


public static String get(String url)
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(url);
String json = null;
try
HttpResponse res = client.execute(get);
if(res.getStatusLine().getStatusCode()==HttpStatus.SC_OK)
HttpEntity entity = res.getEntity();
json = EntityUtils.toString(entity);

catch(Exception e)
throw new RuntimeException();
finally
client.getConnectionManager().shutdown();

return json;

参考技术A Check if this entry is a directory or a file.
const size_t filenameLength = strlen(fileName);
if (fileName[filenameLength-1] == '/')

参考技术B 返回数据需要转换一下编码

Android中的httpclient框架发送get请求

/**
	 * 採用httpclientGet请求的方式
	 * 
	 * @param username
	 * @param password
	 * @return null表示求得的路径有问题,text返回请求得到的数据
	 */
	public static String httpclientGet(String username, String password) {
		try {
			// 1.打开一个浏览器
			HttpClient client = new DefaultHttpClient();
			// 2.输入地址
			String path = "http://172.22.64.156:8080/0001AndroidWebService/LoginServlet?username="
					+ URLEncoder.encode(username)
					+ "&password="
					+ URLEncoder.encode(password);
			// 指定请求方式
			HttpGet get = new HttpGet(path);
			// 3.敲回车
			HttpResponse response = client.execute(get);
			//获取返回的码
			int code = response.getStatusLine().getStatusCode();
			if (code == 200) {
				//获取返回的信息
				InputStream is = response.getEntity().getContent();
				String text = StreamUtil.readStream(is);
				return text;
			} else {
				return null;
			}
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
	}


以上是关于httpclient get请求返回的数据乱码?跪求大神帮帮我..下面是代码,就是一个调用接口返回天气预报json数据的主要内容,如果未能解决你的问题,请参考以下文章

02_Httpclient

为啥HttpClient请求返回400,URL请求返回302正常

Android中使用HttpClient发送Get请求

HttpClient发送请求后得到的响应内容出现部分乱码的问题

Android传统HTTP请求get----post方式提交数据(包括乱码问题)

关于HttpClient的学习心得,请求参数中文乱码问题