android接收json
⑴ android 怎么接受网址上的json数组,并解析
传入网址路径,获取字符串
public static String getHtmlContent(String url) {
String htmlCode = null;
StringBuffer resultBuffer = new StringBuffer();
HttpGet request = new HttpGet(url);
HttpClient httpClient = new DefaultHttpClient();
try {
HttpResponse response = httpClient.execute(request);
if(response.getStatusLine().getStatusCode() == 200)
{
HttpEntity entity = response.getEntity();
BufferedReader io = new BufferedReader(new InputStreamReader(entity.getContent(),"UTF-8"));
String strResult;
while((strResult = io.readLine())!=null){
resultBuffer.append(strResult);
}
htmlCode = new String(resultBuffer);
io.close();
}
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return htmlCode;
}
解析json字符串
private String parseJson(String strResult) {
String temp = null;
try {
JSONObject jsonObj = new JSONObject(strResult).getJSONObject("weatherinfo");
temp = jsonObj.getInt("temp") + "#" +jsonObj.getString("city");
} catch (JSONException e) {
System.out.println("Json parse error");
e.printStackTrace();
}
return temp;
}
注意事项:网络请求要异步操作
⑵ php服务器端怎样接收来自android的json数据.android以post方式发送
php有一个函数叫json_encode,数据从服务器中拿过来之后,我是直接添加进array里面来进行操作的,android认的JSONObject的格式是两层大括号包着的array。 你将数据从数据库中拿出来之后,组成associative array,用你的例子创建一个空array先~~ $arr = array(); $arr['test'] = 'json'; $arr['mode'] = 'single'; 这样加进一个叫$arr的数组(中文是叫这个的吧。。。orz。。。。)之后,你用另一个array再把它装进去,操作是 $arr2 = array('view' => $arr); 这样我们要的那个主要的包含数据的数组$arr就有了一个名字,于是android解析的时候就可以区别了,php输出的时候,要这样输出: echo json_encode($arr2); 于是就ok~~~会变成一个可以解析的JSONObject哦~~~~ 以上全部是我个人研究经验。。。。也许有更简单的方法,求高手指教~~~不过我们整个一个系统里面凡是server和android软件交互的数据我都是这么发过去的,表示JSONArray是更麻烦的东西,JSONObject神马的,还是很简单的哈~~~~~自己研究研究就出来了~~~
⑶ 服务器端怎么接收Android客户端传过来的Json数据
android如果是通过http post发送数据的话,可以采用以下方式接收数据:
通过request.getParameter(paraName); 获取参数。
request对象就是表示请求对象,getParameter就是获取参数,传递的参数就是参数名。
例如请求 localhost:8080/web?data=abcd 则服务器取值,request.getParameter("data"); 。
⑷ java怎么接收android请求过来的json数据
java接收android请求json数据的方法:
如果发送的没有参数名称你可以直接得到请求体,如
InputStreaminputStream=urlConnection.getInputStream();
Stringencoding=urlConnection.getContentEncoding();
Stringbody=IOUtils.toString(inputStream,encoding);
System.out.println(body);如果body就是那个json内容使用fastjson进行解析就可以了
JSONObjectmap=JSON.parseObject(body);
System.out.println(map.getString("mobileNo"));//还是System.out.println(map.get("mobileNo"));?具体看一下接口文档或者
Mapmap=JSON.parseObject(body,Map.class);
System.out.println(map.get("mobileNo"));
⑸ android 接收url的json数据 中文转码
服务器端:
StringencodeStr=URLEncoder.encode("中国","utf-8");
System.out.println("处理后:"+encodeStr);
//处理后:%E4%B8%AD%E5%9B%BD
客户端:
StringdecodeStr=URLDecoder.decode(encodeStr,"utf-8");
System.out.println("解码:"+decodeStr);
//解码:中国
⑹ 在android网络编程里,客户端与服务器端采用json方式传递数据。服务器端是怎么接受和返回数据呢
int formDataLength = request.getContentLength();
// 取得ServletInputStream输入流对象
DataInputStream dataStream = new DataInputStream(
request.getInputStream());
byte body[] = new byte[formDataLength];
int totalBytes = 0;
while (totalBytes < formDataLength) {
int bytes = dataStream.read(body, totalBytes, formDataLength);
totalBytes += bytes;
}
String json = new String(body, "ISO-8859-1");
System.out.println(json);
⑺ 在android中如何访问某个能返回json字串的url连接,并接收返回的json
publicStringgetWebContent(Stringurl){
//创建一个http请求对象
HttpGetrequest=newHttpGet(url);
//创建HttpParams以用来设置HTTP参数
HttpParamsparams=newBasicHttpParams();
//设置连接超时或响应超时
//HttpConnectionParams.setConnectionTimeout(params,3000);
//HttpConnectionParams.setSoTimeout(params,5000);
//创建一个网络访问处理对象
HttpClienthttpClient=newDefaultHttpClient(params);
try{
//执行请求参数项
HttpResponseresponse=httpClient.execute(request);
//判断是否请求成功
if(response.getStatusLine().getStatusCode()==HttpStatus.SC_OK){
//获得响应信息
Stringcontent=EntityUtils.toString(response.getEntity());
returncontent;
}else{
//网连接失败,使用Toast显示提示信息
Toast.makeText(
context,
context.getResources().getString(
R.string.connected_fails),3000).show();
}
}catch(Exceptione){
//e.printStackTrace();
}finally{
//释放网络连接资源
httpClient.getConnectionManager().shutdown();
}
returnnull;
}
content: 即为json数据。
⑻ android向服务端发送数据并接收返回的json数据
用http协议发送get或者post请求,把需要发送的json字符串带上。最好用post方式
⑼ Android端,要从后台获取json数据,后台将这个json以流的形式发送,那Android端怎
JSON数据就是一个JSON格式的字符串,接收到服务端来的JSON数据,转为JSONObject
,然后处理后(JSONObject 加减KEY、VALUE),然后JSONObject.tostring()发给服务端即可。
【超级盘点机】超市盘点机安卓条码扫描APP软件,ENJOY!