安卓 从网上获取的json数据如何处理

安卓 从网上获取的json数据如何处理,第1张

[]包括的内容是JSONArray,{}包括的内容是JSONObject。

JSON解析,将结果转换成Json对象

JSONObject obj = new JSONObject(数据字符串)。

JSONArrayarr = objobjgetJSONArray(name),name是数据“”里的名字,同理JSONArray里包含的JSONObject 使用getJSONObject得到。

然后要得到的具体数据就在JSONObject 、JSONArray里了,使用它们的方法get(name)得到具体值。(指类型String等)

如果不是Android开发环境的话,首先需要引入处理JSON数据的包:json-lib-223-jdk15jar

Java样例程序如下:

import netsfjsonJSONArray;

import netsfjsonJSONObject;

public class DoJSON {

public static void main(String[] args) {

JSONArray employees = new JSONArray(); //JSON数组

JSONObject employee = new JSONObject(); //JSON对象

employeeput("firstName", "Bill"); //按“键-值”对形式存储数据到JSON对象中

employeeput("lastName", "Gates");

employeesadd(employee); //将JSON对象加入到JSON数组中

employeeput("firstName", "George");

employeeput("lastName", "Bush");

employeesadd(employee);

employeeput("firstName", "Thomas");

employeeput("lastName", "Carter");

employeesadd(employee);

Systemoutprintln(employeestoString());

for(int i=0; i<employeessize(); i++) {

JSONObject emp = employeesgetJSONObject(i);

Systemoutprintln(emptoString());

Systemoutprintln("FirstName :\t" + empget("firstName"));

Systemoutprintln("LastName : \t" + empget("lastName"));

}

}

}

运行效果:

[{"firstName":"Bill","lastName":"Gates"},{"firstName":"George","lastName":"Bush"},{"firstName":"Thomas","lastName":"Carter"}]

{"firstName":"Bill","lastName":"Gates"}

FirstName : Bill

LastName : Gates

{"firstName":"George","lastName":"Bush"}

FirstName : George

LastName : Bush

{"firstName":"Thomas","lastName":"Carter"}

FirstName : Thomas

LastName : Carter

直接输出就可以了 String jsondata = "{'a':" + a + ",'b':" + b + ",'c':" + c + "}"; 如果abc是字符串就加上单引号,如 String jsondata = "{'a':'" + a + "','b':'" + b + "','c':'" + c + "'}"; 如果abc是数组 String jsondata = "{'a':[" + a[0] + "," + a[1] + "," + a[2] + "],'b':}"; 如果abc是对象就相对复杂一点 String jsondata = "{'a':{'a_paramStr':'" + aparamStr + "','a_pramaInt'}:apramaInt},'b':}"; 当然,如果对象的成员变量很多,可以可以通过对象遍历的方式输出,还有包含子对象、子子对象的情况 总结如下 格式:{'数据名':数据值} 数据值为数字时,直接输出 数据值为字符串时,用单引号包含值,'数据值' 数据值为数组时,用中括号包含,[数据值1,数据值2,] 数据值为对象时,用大括号包含,{'成员名1':成员数值1,'成员名2':{'成员2对象的成员1','成员2对象的成员1值'},} 数据与数据之间用逗号隔开,以上 一句话,如果传送数据很简单可以自己输出;如果很复杂,乖乖用三方json包吧,我真不懂为什么抗拒别人做的车轮

==========================================

js 中读取JSON的方法探讨

js读取JSON的方法我接触到的有两种:

方法一:函数构造定义法返回

var strJSON = "{name:'json name'}";//得到的JSON

var obj = new Function("return" + strJSON)();//转换后的JSON对象

alert(objname);//json name

方法二:js中著名的eval函数

var strJSON = "{name:'json name'}";//得到的JSON

var obj = eval( "(" + strJSON + ")" );//转换后的JSON对象

alert(objname);//json name

第二种方法需要注意的是,对象表达式{'name':'json name'}必须用“()”扩住,否则

var strJSON = "{name:'json name'}";

var obj = eval(strJSON);

alert(objconstructor);//String 构造函数

alert(objname);//undefine

必须把对象表达式扩起来eval执行才能生成一个匿名对象!

一、 JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。

Json建构于两种结构:

1、“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 如:

{

“name”:”jackson”,

“age”:100

}

2、值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)如:

{

“students”:

[

{“name”:”jackson”,“age”:100},

{“name”:”michael”,”age”:51}

]

}

二、java解析JSON步骤

A、服务器端将数据转换成json字符串

首先、服务器端项目要导入json的jar包和json所依赖的jar包至builtPath路径下(这些可以到JSON-lib官网下载:>

获取JSON的值。  就是解析JSON数据

如果是简单的JSON数据, 并且只需要提取少量数据的值, 那么可以使用字符串的 *** 作来实现,比如StringsubString()等

如果是比较复杂的JSON数据,或者需要提取的值比较多, 那么可以使用Gson, FastJSon 等第三方的jar来实现

简单的Demo示例

第三方包使用的是Gson

import comgooglegsonJsonElement;

import comgooglegsonJsonObject;

import comgooglegsonJsonParser;

public class GsonTest {

public static void main(String[] args) {

String strJson = "{ \"name\": \"张三\", \"age\": 12 }";

JsonParser parser = new JsonParser();

JsonElement je = parserparse(strJson);

JsonObject jobj = jegetAsJsonObject();//从json元素转变成json对象

String name = jobjget("name")getAsString();//从json对象获取指定属性的值

Systemoutprintln(name);

int age = jobjget("age")getAsInt();

Systemoutprintln(age);

}

}

把前端获取的json数据转换为json对象,如果再根据json对象数据在html页面展示。如:

var josn=[{'name':'z','age':18},{'name':'li','age':19}];//json对象

//我这里josn对象是数组,可以遍历,用table去显示

var html='<table id="tab"><tr><td>姓名</td><td>年龄</td></tr>';//html字符串

for(var i=0;i<jsonlength;i++){

    var obj=json[i];

    html+='<tr><td>'+objname+'</td><td>'+objage+'</td></tr>';//拼接html字符串

}

html+='</table>';//table结尾

$(documentbody)append(html);//利用jQuery把table追加在body标签的最后

以上就是关于安卓 从网上获取的json数据如何处理全部的内容,包括:安卓 从网上获取的json数据如何处理、java怎么得到json中的数据、json如何获取封装数据库中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9638958.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存