1 package nlp.llj.bonc.com.cn; 2 3 import com.alibaba.fastjson.JSON; 4 import com.alibaba.fastjson.JSONObject; 5 6 public class primaryJson { 7 8 public static void stringToJson(String s) { 9 10 System.out.println("---fastjson的简单使用Demo---"); 11 12 // 将字符串解析成json对象 13 JSONObject js = JSON.parseObject(s); 14 15 System.out.println("---获取属性值---"); 16 // 获取需要的属性值 17 Object content = js.get("content"); 18 System.out.println("Object content:" + content); 19 // 属性值一般为字符串,所以可以直接强转 20 String content2 = (String) js.get("content"); 21 System.out.println("String scontent:" + content2); 22 // 如果获取的属性值仍然为json格式,则用JSONObeject类型 23 JSONObject author = (JSONObject) js.get("author"); 24 System.out.println("JSONObject author:" + author); 25 // 如下方法和上述方法效果一样 26 JSONObject author2 = js.getJSONObject("author"); 27 System.out.println("JSONObject author2" + author2); 28 // toString()方法获取的值是一样的,只不过把数据类型转换成了String 29 String AuthorToString = author.toString(); 30 System.out.println("String AuthorToString:" + AuthorToString); 31 // 要获取author的json里的属性值,方法相同 32 // 需要注意的是获取属性值,必须是JSONObejet类型的对象 33 Object nickName = author.get("nickName"); 34 System.out.println("Object nickName:" + nickName); 35 String nickName2 = (String) author.get("nickName"); 36 System.out.println("String nickName2:" + nickName2); 37 String nickName3 = nickName.toString(); 38 System.out.println("String nickName3:" + nickName3); 39 System.out.println("---json属性值的获取Demo完毕---"); 40 System.out.println(""); 41 System.out.println(""); 42 43 System.out.println("---插入值---"); 44 //想在哪个json对象插入数值,就用如下方法,全局json数据都会有效。 45 System.out.println("在author里插入{\"来源\":\"新浪微博\"}"); 46 author.fluentPut("来源", "新浪微博"); 47 System.out.println("局部json:"+author); 48 System.out.println("全局json:"+js); 49 System.out.println("全局里插入{\"地点\":\"北京市朝阳区来广营\"}"); 50 js.fluentPut("地点", "北京市朝阳区来广营"); 51 System.out.println("全局json:"+js); 52 System.out.println("---插值Demo完毕---"); 53 System.out.println(""); 54 System.out.println(""); 55 56 System.out.println("---删除值---"); 57 //要删除某个属性值用如下方法 58 js.remove("author"); 59 System.out.println("删除author:"+js); 60 js.remove("地点"); 61 System.out.println("删除地点:"+js); 62 System.out.println("---删除值Demo完毕---"); 63 System.out.println(""); 64 System.out.println(""); 65 66 67 System.out.println("---修改值---"); 68 System.out.println("还是先插入一个地点值,方便演示"); 69 System.out.println("全局里插入{\"地点\":\"北京市朝阳区来广营\"}"); 70 js.fluentPut("地点", "北京市朝阳区来广营"); 71 System.out.println("全局json:"+js); 72 //用下列方法修改值 73 js.replace("地点", "河北省石家庄市裕华区槐安东路"); 74 System.out.println("修改地点信息后:"+js); 75 System.out.println("---修改值Demo完毕---"); 76 System.out.println(""); 77 System.out.println(""); 78 79 } 80 81 }
传入一个json格式的字符串,即可验证程序。
我本将心向明月,奈何明月照沟渠,落花有意随流水,流水无心恋落花。