JSON Iterator 解析(含map格式)

该博客介绍了如何使用JSON Iterator解析JSON数据,并通过枚举类型映射数据字段。示例代码展示了从JSON对象中提取各种字段,包括数据、用户ID、文件条目、内容ID映射等,同时处理可能为null的情况。解析过程中涉及对JSON对象和Map的处理,以及对嵌套数据结构的解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

————————————————————————————————————————————————————————————————————————————————
接口:


import org.json.JSONArray;
import org.json.JSONObject;
import java.util.ArrayList;


public interface IParserJson {
    NetPiazaEntity parseJson(JSONObject jsonData);
    ArrayList<NetPiazaEntity> onObtainParserList(String strJson);
    ArrayList<NetPiazaEntity> onObtainParserList(JSONArray JsonArray);
}


————————————————————————————————————————————————————————————————————————————————
枚举:



    public enum EmnuJsonData{
        data,


        userId,
        userName,
        userAccount,
        addressId,
        shareTime,
        shareDescription,
        contentIdMap,
        fileEntry,
        resourceCount,
        resourceStoreCount,
        commentCount,
        collectionCount,
        approvalCount,
        visitCount,
        transferCount,
        shareId,
        shareUrl,
        thumbnailIndexID,
        existApproval,
        existCollection,
        existFocus,
        shareContentType;
    }


——————————————————————————————————————————————————————————————————————————————————
根据枚举获取格式中的KEY值:

    private String getJsonEntityEmnu(EmnuJsonData emnuJson){
        String emnuJsonData;
        switch (emnuJson){
            case data:
                emnuJsonData = "data";
                break;
            case userId:
                emnuJsonData = "userId";
                break;
            case userName:
                emnuJsonData = "userName";
                break;
            case userAccount:
                emnuJsonData = "userAccount";
                break;
            case addressId:
                emnuJsonData = "addressId";
                break;


            case shareTime:
                emnuJsonData = "shareTime";
                break;


            case shareDescription:
                emnuJsonData = "shareDescription";
                break;


            case contentIdMap:
                emnuJsonData = "contentIdMap";
                break;


            case fileEntry:
                emnuJsonData = "fileEntry";
                break;


            case resourceCount:
                emnuJsonData = "resourceCount";
                break;


            case resourceStoreCount:
                emnuJsonData = "resourceStoreCount";
                break;


            case commentCount:
                emnuJsonData = "commentCount";
                break;


            case collectionCount:
                emnuJsonData = "collectionCount";
                break;


            case approvalCount:
                emnuJsonData = "approvalCount";
                break;


            case visitCount:
                emnuJsonData = "visitCount";
                break;


            case transferCount:
                emnuJsonData = "transferCount";
                break;


            case shareId:
                emnuJsonData = "shareId";
                break;


            case shareUrl:
                emnuJsonData = "shareUrl";
                break;


            case thumbnailIndexID:
                emnuJsonData = "thumbnailIndexID";
                break;


            case existApproval:
                emnuJsonData = "existApproval";
                break;


            case existCollection:
                emnuJsonData = "existCollection";
                break;


            case existFocus:
                emnuJsonData = "existFocus";
                break;
            case shareContentType:
                emnuJsonData = "shareContentType";
                break;
            default:
                emnuJsonData = "";
            break;


        }
        return emnuJsonData;
    }


————————————————————————————————————————————————————————————————————————————
解析:
  @Override
    public NetPiazaEntity parseJson(JSONObject jsonData) {
        NetPiazaEntity netEntityInstance = null;
        try {
                JSONObject mJsonObj = jsonData;
                ne
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值