-
一段JSON,如何进行解析10
从sFlow-rt提供的REST API得到了一段JSON数据,如何进行解析呢?
{
"17.ifInmulticastpkts": 0,
"17.ifindex": "17",
"17.ifindiscards": 0,
"17.ifinerrors": 0,
"17.ifinoctets": 0,
"17.ifinucastpkts": 0,
"17.ifoutdiscards": 0,
"17.ifouterrors": 0,
"17.ifoutoctets": 0,
"17.ifoutucastpkts": 0,
"17.ifspeed": 10000000000,
"17.iftype": "ethernetCsmacd",
"19.ifInmulticastpkts": 0,
"19.ifindex": "19",
"19.ifindiscards": 0,
"19.ifinerrors": 0,
"19.ifinoctets": 0,
"19.ifinucastpkts": 0,
"19.ifoutdiscards": 0,
"19.ifouterrors": 0,
"19.ifoutoctets": 0,
"19.ifoutucastpkts": 0,
"19.ifspeed": 10000000000,
"19.iftype": "ethernetCsmacd",
"21.ifInmulticastpkts": 0,
"21.ifindex": "21",
"21.ifindiscards": 0,
"21.ifinerrors": 0,
"21.ifinoctets": 0,
"21.ifinucastpkts": 0,
"21.ifoutdiscards": 0,
"21.ifouterrors": 0,
"21.ifoutoctets": 0,
"21.ifoutucastpkts": 0,
"21.ifspeed": 10000000000,
"21.iftype": "ethernetCsmacd",
"23.ifInmulticastpkts": 0,
"23.ifindex": "23",
"23.ifindiscards": 0,
"23.ifinerrors": 0,
"23.ifinoctets": 0,
"23.ifinucastpkts": 0,
"23.ifoutdiscards": 0,
"23.ifouterrors": 0,
"23.ifoutoctets": 0,
"23.ifoutucastpkts": 0,
"23.ifspeed": 10000000000,
"23.iftype": "ethernetCsmacd"
}
也就是每组数字对应的一个model,但是没有在JSON中分开,这样的JSON如何进行解析,谢谢各位大神。2013年1月21日 23:24
5个答案 按时间排序 按投票排序
-
采纳的答案
public class JSon2ModelTest { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("1.xx", "1xx"); map.put("1.yy", "1yy"); map.put("1.zz", "1zz"); map.put("2.xx", "2xx"); map.put("2.yy", "2yy"); map.put("2.zz", "2zz"); map.put("3.xx", "3xx"); map.put("3.yy", "3yy"); map.put("3.zz", "3zz"); String str=JSON.toJSON(map).toString(); Map<String,String> m=JSON.parseObject(str, Map.class); Set<String> s=m.keySet(); Iterator<String> it=s.iterator(); //缓存分组后的数据的map对象 Map<String,List<String>> mm=new HashMap<String,List<String>>(); //缓存分组后的数据的map对象的key List<String> listKey=new ArrayList<String>(); //初始化缓存的map对象开始 List<String> listInit=new ArrayList<String>(); String t = it.next(); String initKey = t.substring(0,t.indexOf(".")); listKey.add(initKey); listInit.add(t); mm.put(initKey, listInit); //初始化缓存的map对象结束 for(;it.hasNext();){ String str2 = it.next(); String temp = str2.substring(0,str2.indexOf(".")); if(mm.containsKey(temp)){ mm.get(temp).add(str2); }else{ List<String> ll = new ArrayList<String>(); listKey.add(temp); mm.put(temp, ll); } } } }
这是测试的代码,你可以参考一下2013年1月22日 14:11
-
转成Map对象,取出来keySet,然后根据条件将keySet分组,然后根据分组后的keySet从Map对象里获取值,组装成VO对象就好了呀
2013年1月22日 12:24
-
JSONObject jo = new JSONObject(sFlow-rt);
String 17.ifInmulticastpkts= jo.getString("17.ifInmulticastpkts");
....
....
其他都一样
用 json-org.jar2013年1月22日 12:22
-
一个在线的json格式化视图工具,很方便:
http://www.bejson.com/go.php?u=http://www.bejson.com/jsonviewernew/2013年1月22日 11:01
相关推荐
### Kettle与JSON解析概述 #### 1. **Kettle简介** - Kettle(Pentaho Data Integration,简称PDI)是一款开源的数据集成工具,广泛用于ETL(Extract-Transform-Load)任务。 - Kettle支持多种数据源,包括关系型...
Esp8266 进阶之路28 【高级篇】教你轻松自如使用cJson在乐鑫 esp8266 如何解析一段json数据以及如何生成一段json数据。 - CSDN博客 https://blog.csdn.net/xh870189248/article/details/82459279
本话题主要涉及使用易语言进行JSON解析,特别是针对页面订单数据的处理。 在“易语言页面订单json解析”项目中,核心任务是获取网页源码中的订单信息,并将其解析为可操作的数据结构。易语言是一种中文编程语言,...
总结来说,SBJson是一个强大的JSON处理工具,它简化了iOS应用中的JSON解析和编码工作。通过引入SBJson,开发者可以更加灵活地处理服务器返回的JSON数据,同时也能有效地处理可能出现的错误情况。无论是初学者还是...
2. **JSON到Java Bean**:如果你有一个Java Bean类,例如`User`,并且你有一段JSON字符串,你可以使用`fromJson()`方法将JSON转换为对应的Java对象。例如: ```java Gson gson = new Gson(); String jsonString =...
解析这段JSON可以这样写: ```java String jsonString = "{\"users\":[{\"id\":1,\"name\":\"张三\"},{\"id\":2,\"name\":\"李四\"}]}"; Gson gson = new Gson(); UsersList userList = gson.fromJson(jsonString, ...
4. **使用JSON库尝试解析**:处理后的数据再用标准的JSON解析库,如苹果的`NSJSONSerialization`或者第三方库如`SwiftyJSON`进行解析。 5. **错误处理**:即使经过预处理,解析过程仍可能出现错误,因此在代码中...
JSON解析和构造是C++开发者经常需要处理的任务。本篇文章将深入探讨如何在C++中使用开源库进行Json的解析与构造,以适应在MFC(Microsoft Foundation Classes)和Win32程序中的应用。 标题所提及的"C++Json解析开源...
幸运的是,随着“json解析助手”的出现,这一挑战得以有效应对。 “json解析助手”是一款功能强大的工具,它专注于将复杂的JSON数据以树状结构的形式可视化呈现。这样的可视化方法使得开发者可以直观地浏览JSON数据...
在给定的“json解析器”中,我们可以推测这是一段优化过的JavaScript代码,去除了空白和注释,适合在生产环境中使用。这段代码的功能是将接收到的JSON数据解析成HTML元素,这样可以直接在网页上显示,这对于交互式...
如果在解析过程中遇到JSON解析异常,会捕获异常并打印堆栈跟踪,然后返回`null`。 在这个例子中,解析JSON数据并显示在ListView中是Android开发中常见的场景。开发者通常会自定义适配器以提供更复杂的视图结构,而...
SIMD指令可以一次性检查多个字节,快速判断一段连续的字符序列是否符合JSON规范。此外,SIMD指令也可以并行处理数值转换,比如将字符串形式的数字转换为浮点或整型,显著提高解析速度。 lemire开发的这套JSON解析...
"水淼·JSON解析助手"是一款专为开发者设计的工具,旨在简化JSON数据的查看和理解过程。它能够帮助用户快速地浏览和分析JSON字符串的层次结构,这对于调试API接口、处理服务器响应或者理解复杂数据结构来说非常有用...
当我们从服务器端获取到一个JSON字符串时,jQuery提供了一个便捷的方法`$.parseJSON()`(在新版本的jQuery中已被`$.getJSON()`替代)来解析这个字符串为JavaScript对象。例如,假设我们有以下JSON字符串: ```json ...
这段代码将创建一个`Person`对象并将其转换为JSON字符串。`toJson()`方法是Gson的核心功能之一,它能够自动处理字段的序列化。 反过来,如果你想从JSON字符串创建Java对象,可以使用`fromJson()`方法: ```java ...
这段代码将JSON字符串转换为Python字典。 **序列化JSON(Serialization)** ```python python_dict = {"name": "John", "age": 30} json_data = json.dumps(python_dict) print(json_data) # 输出:'{"name": ...
3. 使用第三方库Jackson进行JSON解析:`ObjectMapper`和`readValue`方法。 4. 泛型和类型擦除:利用`TypeReference`处理Java泛型类型信息。 通过这样的方式,我们能够高效地处理来自服务器或本地存储的JSON数据,将...
总的来说,CocoGUI是一个致力于简化GUI开发的工具,通过JSON解析实现了数据驱动的界面设计。它使得非编程背景的设计人员也能参与界面的构建,同时为开发者提供了灵活的接口和高度可扩展性。虽然可能仍处在不断完善的...
在JavaScript中解析JSON数据是一项非常基础且常用的操作。根据所提供的文件信息,“js解析json代码”这一标题明确指出了本文将探讨的主题,即如何利用JavaScript语言处理JSON格式的数据。描述部分进一步强调了这部分...