`

判断字符串是JSONObject还是JSONArray

阅读更多
使用 JSONTokener。
 JSONTokener.nextValue()会给出一个对象,然后可以动态的转换为适当的类型。
Object json = new JSONTokener(jsonResponse).nextValue();
if(json instanceof JSONObject){
    JSONObject jsonObject = (JSONObject)json;
    //further actions on jsonObjects
    //...
}else if (json instanceof JSONArray){
    JSONArray jsonArray = (JSONArray)json;
    //further actions on jsonArray
    //...
}
分享到:
评论

相关推荐

    JSONObject与JSONArray的使用.pdf

    JSON-Lib允许将`JSONObject`和`JSONArray`转换为字符串,便于在网络中传输或存储。例如,可以使用`toString()`方法将`JSONObject`转换为JSON字符串: ```java String jsonString = jsonObject.toString(); ``` ...

    JSONObject与JSONArray的使用

    JSONObject和JSONArray是JSON-lib中处理JSON数据的两个核心类,它们分别代表JSON对象和JSON数组。 #### JSONObject的使用 - **创建JSONObject对象**:首先需要引入"net.sf.json"包。然后可以通过调用JSONObject的...

    java验证字符串是否符合json格式

    在这个`JsonValidator`类中,我们定义了一个静态方法`isValidJson`,它尝试将传入的字符串构造为一个`JSONObject`。如果字符串是有效的JSON,构造过程不会抛出异常,方法返回`true`;否则,如果抛出异常(如`...

    Json数据格式协议C#解析方法

    2. **读取Json字符串**:使用`JsonReader`类可以逐个解析JSON字符串中的元素。 - `reader.Read()`:用于循环读取JSON数据中的内容,直到所有数据都被解析完毕。 - `reader.Value`:表示当前读取到的数据内容。 3...

    com.alibaba.fastjson.JSONObject.rar

    JSONObject作为Fastjson库中的一个类,它代表了JSON格式中的一个对象,即一个键值对的集合,其中键是字符串,值可以是各种数据类型,包括其他JSONObject或JSONArray。 Fastjson的JSONObject提供了一系列丰富的API,...

    net.sf.json.JSONObject对象使用指南

    - **构造器**:与`JSONObject`类似,`JSONArray`也提供了一系列构造器,可以从现有的集合或JSON字符串构建`JSONArray`实例。 - **常用方法**: - `put(Object value)`:向`JSONArray`中添加元素。 - `get(int ...

    Java 开发所需json的jar包,转json格式

    * 将得到的数据以json格式进行输出,如果对象不存在则输出空字符串 * * @param obj * 要转换成json的对象 */ protected String toJson(Object obj) { String json = ""; if (obj != null) { if (isArray...

    java解析任意层数json字符串的方法

    在Java中,常用的JSON解析库是org.json库,它提供了JSONObject和JSONArray类,可以用来解析JSON对象和数组。但是,如果JSON结构的层数不固定,就需要编写额外的解析逻辑来处理这种复杂情况。 正则表达式(Regular ...

    json手动转map和list1

    4. **从JSON字符串创建JSONArray和JSONObject**: 使用`JSONArray.fromObject(jsonStr)`和`JSONObject.fromObject(jsonStr)`方法可以将JSON格式的字符串转换为对应的JSON对象。 5. **List, Object>>**: 这是一个列表...

    Android-提交工具类的一个项目平时的项目积累代码。

    - `contains()`:判断字符串是否包含某个子串。 - `substring()`:截取字符串的一部分。 - `join()`:将多个字符串合并成一个。 2. **日期时间工具类** (DateTimeUtils): - `formatDate()`:将日期对象转换为...

    Android应用源码之Android 解析json_dome.zip

    1. 对象:以花括号 `{}` 包围,键值对以逗号 `,` 分隔,键(key)是字符串,用双引号 `" "` 包裹,值(value)可以是各种数据类型。 2. 数组:以方括号 `[]` 包围,元素以逗号 `,` 分隔。 3. 基本类型:字符串...

    android选择题

    另一种常用的方法是使用org.json库,通过JSONObject和JSONArray类来解析和构建JSON结构。例如,你可以创建一个对应的Java模型类,然后使用Gson的fromJson()方法将JSON字符串转换为这个模型类的实例。 接着,解析后...

    android 动态解析获取json数据的键值对

    // 转换输入流为字符串 JSONObject jsonObject = new JSONObject(jsonString); JSONArray usersArray = jsonObject.getJSONArray("users"); ``` 接下来,我们遍历`usersArray`,获取每个用户对象,并解析出其中的...

    System.Json.dll

    - 反序列化:将JSON字符串转换为C#对象,如`JsonObject obj = JsonObject.Parse(jsonString);` - 序列化:将C#对象转换为JSON字符串,如`string jsonString = obj.ToString();` - 遍历:可以通过迭代器遍历...

    采用Gson解析含有多种JsonObject的复杂json

    在Java开发中,Gson库是一个非常常用的JSON解析库,它可以方便地将JSON字符串转换为Java对象,反之亦然。然而,当面对包含多种不同结构JsonObject的复杂JSON时,简单的映射方式不再适用。在这种情况下,我们需要采取...

    c#的json解析工具litejson

    `LiteJSON`库的核心功能包括将JSON字符串解析为.NET对象,以及将.NET对象序列化为JSON字符串。以下是对`LiteJSON`的一些关键知识点的详细说明: 1. **安装和引入**:在C#项目中使用`LiteJSON`,首先需要通过NuGet包...

    安卓Android源码——使用JSON进行网络数据交换(服务端、客户端)的实现.zip

    键是字符串,值可以是各种类型,如字符串、数字、布尔值、数组、对象等。例如: ```json { "name": "John", "age": 30, "city": "New York" } ``` 在安卓客户端,我们通常使用`org.json`库或`Gson`库来解析和...

    Java Web程序实现返回JSON字符串的方法总结

    在Java Web开发中,将Java对象数据转换成JSON字符串并返回到前端是一个非常常见的需求。随着互联网的发展和前后端分离架构的普及,这一需求更是日益突出。本文将详细介绍如何使用Java Web技术实现返回JSON字符串的...

Global site tag (gtag.js) - Google Analytics