如何java解析json数组

如何java解析json数组,第1张

工具/原料

安装有eclipse软件的电脑一台

方法/步骤

1

首先我们在eclipse中创建一个java工程,在java工程中创建一个HelloWorld的类,在这个java的入口程序中,我们来创建一个json字符串,并且打印出来,如下图

2

将我们刚刚创建的json字符串打印出来如下所示,可以看出这个json包含了一个大json对象,大json对象里面又包含一个json数组,一个数组里面又包含三个json对象,如下图:

3

在java中我们要解析json数组必须借助第三方包,所以这里我们加载一下第三方包,首先我们将鼠标移动到项目名称上面去,然后右键召唤出右键快捷菜单,然后依次点击Build Path->Configure Build Paht,如下图:

4

然后我们按照图中红色方框所示点击Libraries,然后点击Add Library,如下图所示:

5

然后我们继续按照图中所示点击User Library,然后点击Next,如下图:

6

然后我们继续按照图中红色方框所示点击User Libraries,如下图:

7

然后我们点击New,来开始创建我们自己的libraries,如下图:

8

然后我们输入我们自己jar库的名字,这里我使用了jsonjar作为我们的名字,如下图:

9

接下来为我们的jar库添加jar包,我们按照下图中红色方框所示点击“Add External JARs”,如下图:

10

我们添加json相关的jar包,这里涉及json的第三方包主要包括这七个,所以我们把这七个包都引入到我们自己的jar库中去,如下图:

11

返回到User Libraries中发现,我们已经引入了所有的jar包,如下图:

我们按照下图中红色方框所示画勾,然后点击finish,如下图:

然后我们按照图中红色边框所示点击Apply,然后点击OK,如下图:

回到我们的工程中,从工程目录中我们可以看到,我们已经添加了自己的名字为jsonjar的jar库,如下图:

接下来我们回到程序中,在头部添加“import netsfjsonJSONArray;import netsfjsonJSONObject;”这两句代码,这两句表示引入了解析json的对象和数组的包,如下图:

然后我们通过代码“JSONObjectfromObject(json_array)”来将我们之前创建的json字符串转换成json对象,并且通过键值对的方式打印出json对象名字为“employees”的值,如下图:

打印出的名字为“employees”的json对象的值如下图是一个数组字符串,如下图:

接下来我们通过代码“jsonobjgetJSONArray("employees")”来将获取的数组字符串转变成为json组数,如下图:

并且我们打印出json数组的长度,可见程序计算的json数组的长度和我们实际的数组长度相一致,如下图:

接下来我们通过一个for循环将我们获取的json数组中的值依次取出来,由于数组中又包含3个对象,我们又需要将3个对象使用代码“JSONObjectfromObject(jsonarrget(i));”将得到的对象字符串变成对象然后再取出来,如下图:

最后,我们将json数组的所有内容都展示到控制台,这样我们就可以使用java通过第三方json包来解析json数组了,如下图:

1、检查JSON数据格式是否正确。可以使用在线JSON格式验证工具或者JSON编辑器等工具对返回的JSON数据进行检验,确保JSON数据的格式符合标准格式要求。

2、检查JSON数据中的键值对是否匹配。在解析JSON数据时,需要确保JSON数据中的键值对与程序中定义的键值对匹配,例如,如果程序定义了一个名为“name”的键,但是返回的JSON数据中没有这个键,就会导致解析JSON数据时出现异常。

3、检查JSON数据类型是否匹配。在解析JSON数据时,需要确保JSON数据中的各个键对应的值的类型与程序中定义的类型匹配。例如,如果程序定义了一个名为“age”的键,并且类型为整数类型,但是返回的JSON数据中“age”对应的值是一个字符串类型,就会导致解析JSON数据时出现异常。

4、检查程序中的JSON解析代码是否正确。在解析JSON数据时,需要确保程序中的JSON解析代码正确无误,例如,使用了正确的JSON解析库和正确的解析方法。

5、检查网络连接是否正常。如果在解析JSON数据时出现异常,有可能是网络连接出现了问题,需要检查网络连接是否正常。

1,使用json需要固定的jar包

2,jdk170_25指的是jdk的版本

3,jre7指的是java的运行环境版本(我们做java开发只需要安装jdk就可以了)

4,我给你贴图帮你配置一下让你的程序可以解析json

①在工程上右键新建文件夹

②导入jar包

③建立依赖关系

注:我把所需的jar包添加到附件中方便使用

String json = requestgetParameter("json");

// 以下为获取typeCode的代码

JSONObject jsonObject = JSONObjectfromObject(json);

JSONObject targetObject = jsonObjectgetJSONObject("targetTypes");

String type = targetObjectgetString("typeCode");

Systemoutprintln(type);

获取其他属性,以此类推就可以了

用json-simple可以达到你要的效果:不过有几组数据的话要拼接才字符串,要不就只能一组一组数据去处理了

这事我写的例子:

String str="[{\"name\":\"george\",\"age\":\"20\"},{\"name\":\"jack\",\"age\":\"25\"}]";

JSONArray arr=(JSONArray) JSONValueparse(str);

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

JSONObject o=(JSONObject) arrget(i);

Systemoutprintln(oget("name"));

}

你这就是一个Extjs grid 的JsonStore

放到JAVA里的话要先转成对象

import netsfjsonJSONObject;

public class TestJson {    

    static String json_str="{\"total\":920,\"data\":[{\"ID\":\"634\",\"Name\":\"于东\"},{\"ID\":\"822\",\"Name\":\"于祎\"},{\"ID\":\"782\",\"Name\":\"于燕\"},{\"ID\":\"636\",\"Name\":\"于玲\"},{\"ID\":\"841\",\"Name\":\"于浩\"},{\"ID\":\"383\",\"Name\":\"于娟\"}]}";

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        JSONObject jsonObject=JSONObjectfromObject(json_str);

        Systemoutprintln(jsonObjectget("total"));

    }

}

以上就是关于如何java解析json数组全部的内容,包括:如何java解析json数组、java对接第三方接口json数据异常如何检验、不用eclipse编辑器导入json包!求大神指点在java安装目录那个文件夹下放关于json包才能用json。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10109466.html

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

发表评论

登录后才能评论

评论列表(0条)

保存