导航:首页 > 编程语言 > android中解析json形式的数据

android中解析json形式的数据

发布时间:2023-10-23 20:19:07

⑴ android 解析json用那个包里面的方法比较好呢

android 解析json还有用Google出品的Gson比较好,具体步骤为:
1、首先,从 code.google.com/p/google-gson/downloads/list下载GsonAPI:
google-gson-1.7.1-release.zip 把gson-1.7.jar 到libs(项目根目录新建一个libs文件夹)中。 可以使用以下两种方法解析JSON数据,通过获取JsonReader对象解析JSON数据。
代码如下:
String jsonData = "[{\"username\":\"arthinking\",\"userId\":001},{\"username\":\"Jason\",\"userId\":002}]";
try{
JsonReader reader = new JsonReader(new StringReader(jsonData));
reader.beginArray();
while(reader.hasNext()){
reader.beginObject();
while(reader.hasNext()){
String tagName = reader.nextName();
if(tagName.equals("username")){
System.out.println(reader.nextString());
}
else if(tagName.equals("userId")){
System.out.println(reader.nextString());
}
}
reader.endObject();
}
reader.endArray();
}
catch(Exception e){
e.printStackTrace();
}
2、使用Gson对象获取User对象数据进行相应的操作:
代码如下:

Type listType = new TypeToken<LinkedList<User>>(){}.getType();
Gson gson = new Gson();
LinkedList<User> users = gson.fromJson(jsonData, listType);
for (Iterator iterator = users.iterator(); iterator.hasNext();) {
User user = (User) iterator.next();
System.out.println(user.getUsername());
System.out.println(user.getUserId());
}
3、如果要处理的JSON字符串只包含一个JSON对象,则可以直接使用fromJson获取一个User对象:
代码如下:

String jsonData = "{\"username\":\"arthinking\",\"userId\":001}";
Gson gson = new Gson();
User user = gson.fromJson(jsonData, User.class);
System.out.println(user.getUsername());
System.out.println(user.getUserId());

⑵ Android 解析这样的json数据怎么解析

简单的给你做了下解析,具体要解析到什么程度,你自己看吧。大概解析方法就是这样的:
如下:
privatevoid testJson(){
String JsonData = "[{\"id\":[\"386\",\"381\",\"379\",\"377\"],\"num\":[\"386\",\"381\",\"379\",\"377\"]},{\"id\":[\"3860\",\"3810\",\"3790\",\"3770\"],\"num\":[\"3860\",\"3810\",\"3790\",\"3770\"]}]";
JSONObject obj = null;
JSONArray jsonArary;
try {
jsonArary = new JSONArray(JsonData);
for(int i=0;i<jsonArary.length();i++){
obj = jsonArary.getJSONObject(i);
//取ID
JSONArray strID = obj.getJSONArray("id");
for(int j=0;j<strID.length();j++){
Log.v("ID:", strID.get(j).toString());
}
//取num
JSONArray strNum = obj.getJSONArray("num");
for(int k=0;k<strNum.length();k++){
Log.v("NUM:", strNum.get(k).toString());
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}

⑶ android中使用java解析json数据

这个格式使用如下代码解析

try{
JSONObjectjsonObject=newJSONObject(json);
JSONObjectweatherinfo=jsonObject.getJSONObject("weatherinfo");

System.out.println(weatherinfo.getString("city"));
System.out.println(weatherinfo.getString("cityid"));
System.out.println(weatherinfo.getString("temp"));
System.out.println(weatherinfo.getString("WD"));

}catch(JSONExceptione){
e.printStackTrace();
}
其中第一行代码JSONObjectjsonObject=newJSONObject(json);//json即为你的字符串

比如现在天气信息是多个城市的,并非只有北京市。
{"weatherinfo":[{"city":"北京","cityid":"101010100","temp":"4","WD":"东风","WS":"2级","SD":"75%","WSE":"2","time":"10:45","isRadar":"1","Radar":"JC_RADAR_AZ9010_JB","njd":"暂无实况","qy":"1011"},{"city":"天津","cityid":"101010100","temp":"4","WD":"东风","WS":"2级","SD":"75%","WSE":"2","time":"10:45","isRadar":"1","Radar":"JC_RADAR_AZ9010_JB","njd":"暂无实况","qy":"1011"}]}
以下代码适用。

try{
JSONObjectjsonObject=newJSONObject(json);
JSONArrayjsonArray=jsonObject.getJSONArray("weatherinfo");
for(inti=0;i<jsonArray.length();i++){
JSONObjectobject=jsonArray.getJSONObject(i);
System.out.println(object.getString("city"));
System.out.println(object.getString("cityid"));
System.out.println(object.getString("temp"));
System.out.println(object.getString("WD"));
}
}catch(JSONExceptione){
e.printStackTrace();
}

⑷ android中这样的JSON数据应该如何解析,

//json我的理解就是一系列键值对,只要KEY值对了,对应数据格式也对了,那就可以了!~
JsonObjectj=...//此处是获取json的方法,自定
booleanb=j.getBoolean("result");//取出“result”对应的值,这里的结果应该
//是"true";
JsonArrayja=j.getJsonArray("asks");//取出“asks”对应的值,因为asks对应的值
//中含有方括号,所以这是JsonArray型数据,需要取出进一步解析;JsonArray可以与数组
//进行比较理解,我个人是这样的,供参考
for(inti=0;i<ja.length();i++){

JsonArrayja1=ja.getJsonArray(i);//获取ja中的第一个元素,因为这个元素
//也是jsonArray,所以可以再进一步解析
doubled1=ja1.getDouble(0);//jsonArray中没有getFloat()这个方法
//,自行转型就可以了
doubled2=ja1.getDouble(1);//

}

以上,希望对你有所帮助

⑸ android怎么样获取并解析json数据

json数据 是从接口获取来的 其实就是一串字符串 可以用Gson解析。
Gson gson =new Gson( ),然后调用fromJson 方法解析

⑹ android客户端与服务器发之间的json数据解析

JSONArray jsonArray = new JSONArray(string); //string为返回的字符串
//数据直接为一个数组形式,所以可以内直接 用android提供的容框架JSONArray读取JSON数据,转换成Array
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject item = jsonArray.getJSONObject(i);
//每条记录又由几个Object对象组成
iitem.getInt("index");
// 获取对象对应的值
item.getString("address");
}

阅读全文

与android中解析json形式的数据相关的资料

热点内容
小米手机助手怎么关闭自动升级 浏览:24
外星人能不能升级到win10系统盘 浏览:652
加入java信任站点 浏览:486
好用的急救知识app 浏览:524
什么是网络适配器驱动文件名 浏览:717
吉林文件箱多少钱 浏览:113
ae模板版本 浏览:204
手机qq步数功能在哪里 浏览:721
c程序设计04737 浏览:403
女孩什么年龄学编程 浏览:976
安庆如何做网络营销推广 浏览:620
什么是数据标准化 浏览:708
aecc三维功能实例视频教程 浏览:719
iphone6s静音键用法 浏览:560
油卡盒子APP是什么公司名下的 浏览:597
怪物猎人wp文件夹什么意思 浏览:108
设置密码的pdf文件如何转换成word 浏览:876
多个文件合并到一起后叫什么 浏览:387
数据库位是什么意思 浏览:104
如何改变手机上的网络连接 浏览:908

友情链接