本例是最复杂的例子,本文可以从最简单的写起,由浅入深,一步一个例子写。

先从解析 { "key", "value"} 这种开始

数据源

{
Routes = [
    {path: '', component: Dashboard},
    {path: 'dashboard', redirectTo: ''},
    {path: 'call', component: DialerComponent, canActivate: [ConferencingGuard]},
    {
        path: 'general',
        children: [
            {path: '', redirectTo: 'region', pathMatch: 'full'},
            {path: 'region', component: RegionLanguagePage},
            {path: 'language', component: RegionLanguagePage},
        ]
    },
    {
        path: 'network',
        children: [
            {path: '', redirectTo: 'ip-address', pathMatch: 'full'},
            {path: 'ip-address', component: IpAddressPage},
            {path: 'dns', component: DnsPage},
        ]
    },

]}

------------------------------------------------------------------

/*notes: value  [ ] 会json parse fail ,改成value "";  value is true/false, it is checkbox; option value is [1,2,3..] is drop list, other is input                                              try option is list[]*//* input  is router.txt;* output is  find the insert line key and value*/public void ParseRouterJson() {//json格式的字符串File file = new File("router.txt");String str = null;//read/parse json string to find menu/submenu location try {//read router.txtstr = FileUtils.readFileToString(file,"GBK");} catch (IOException e) {e.printStackTrace();}//! 创建一个Gson对象Gson gson = new Gson();//deserilizationObj obj = gson.fromJson(str, Obj.class);//System.out.println(obj.getVars().get(0).getConfigVar().getNodeAndVarName());String menu,submenu;int childsize=0;int i,j;//7 main menu+3 headfor (i=0;i<10;i++){menu = obj.getRoutes().get(i).getPath();if ( menu.equals(menustr.toLowerCase())){childsize=obj.getRoutes().get(i).getChildren().size();System.out.println("line120:"+childsize);break;}}for (j=0;j<childsize;j++){submenu = obj.getRoutes().get(i).getChildren().get(j).getPath();if (submenu.compareTo(submenustr.toLowerCase())>0){break;}}lastpath=obj.getRoutes().get(i).getChildren().get(j-1).getPath();componentstr=obj.getRoutes().get(i).getChildren().get(j-1).getComponent();System.out.println("line144:lastpath="+lastpath+";componentstr="+componentstr+"i="+i+";j="+j);}

java parse json string相关推荐

  1. Java解析json字符串和json数组

    Java解析json字符串和json数组 public static Map<String, String> getUploadTransactions(String json){Map& ...

  2. Java 对象 、String 、JSON 互转

    一.引入依赖 <dependency><groupId>org.json</groupId><artifactId>json</artifactI ...

  3. java jackson2.6_Jackson 2 - Convert Java Object to JSON and JSON String to Object

    在本教程中,我们将学习使用将JSON转换为Java对象 – 并将Java对象转换为JSON . 1. Jackson 2 maven dependency 要将Jackson 2库包含在您的项目中,请 ...

  4. 用java自己实现String类的trim()方法功能

    用java自己实现String类的trim()方法功能 我们都知道String类中的trim()方法的功能在于:"返回字符串的副本,其中该副本忽略前导空白和尾部空白."(这是api ...

  5. java中将json字符串_Java中JSON字符串与java对象的互换实例详解

    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...

  6. Java中JSON字符串与java对象的互换实例详解

    这篇文章主要介绍了在java中,JSON字符串与java对象的相互转换实例详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JS ...

  7. java环境json哪些事?

    改章节个人在广东吃饭的时候突然想到的...这几周就有想写几篇关于java环境的博客,所以回家到之后就奋笔疾书的写出来发表了 在PHP中可以混合单引和双引包括字符串,但在java中只能用双引包括字符串, ...

  8. json string 格式_自己动手实现一个简单的JSON解析器

    作者:田小波 原文:http://cnblogs.com/nullllun/p/8358146.html 1. 背景 JSON(JavaScript Object Notation) 是一种轻量级的数 ...

  9. java封装json串示例_Java JSON示例

    java封装json串示例 Welcome to the Java JSON Example Tutorial. JSON (JavaScript Object Notation) is text-b ...

最新文章

  1. 小程序获取图片的宽高
  2. 文本挖掘预处理流程总结(2)— 英文
  3. JavaScript(JS)之简单介绍
  4. 阿里巴巴计算平台资深技术专家“一浪”对大数据领域近几年的技术趋势和变化的看法【强烈推荐数据岗细细品!】
  5. 测试Spring的“会话”范围
  6. pythonlist循环添加元素_python中 for循环之后 添加元素到列表失败?
  7. 第1关:创建/删除节点
  8. IList,ICollection,IEnumerable,IEnumerator,IQueryable
  9. 鸿蒙系统公布名单,鸿蒙系统支持名单曝光,有你的手机吗?
  10. 简单突破数据库备份路径拿shell
  11. UI设计中图标类型指南
  12. 面试备战笔记2019
  13. CST STUDIO SUITE 2022 软件下载与安装教程
  14. 2022-2027年中国海参行业市场深度分析及投资战略规划报告
  15. VoIP全球发展现状
  16. windows的cmd常用命令
  17. 做一名有幸福感的计算机教师,做一名具有幸福感的教师
  18. token是干啥子的
  19. 试简述smtp通信的三个阶段的过程_通信原理简答题汇总
  20. 关于上海贝尔实习的感想

热门文章

  1. 基于ssm的流浪猫狗救助网站(包含数据库、完美运行、可远程调试)
  2. 西电李航 操作系统课程笔记 day8 Implementation of File system
  3. html语言设置网页名称,HTML语言范例
  4. Swagger2的简单介绍和使用
  5. HHC6003: Error: The file Itircl.dll has not been
  6. 三维计算机动画的特征是真实性,三维动画技术有哪些优势特征呢?
  7. 几大科技公司的组织结构图
  8. 第三方社会化评论插件
  9. python调用谷歌翻译__201907
  10. cpolra实现内网穿透,无须公网ip