json的使用入門

           JSON采用完全獨立于語言的文本格式,易于人閱讀和編寫,同時也易于機器解析和生成。所以是數(shù)據(jù)中轉(zhuǎn)與傳輸?shù)膬?yōu)選。下面就是經(jīng)常用到的一些特性。本文所指都是json-lib的用法
          1.json--->List<YOUR_CLASS>
           
           1       List<YOUR_CLASS> list=new ArrayList<YOUR_CLASS>(); 
                        JSONArray jsonArray = JSONArray.fromObject(fmsStr);
           2        JsonConfig jc=new JsonConfig();
           3        jc.setRootClass(YOUR_CLASS.class);
           4        jc.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);
           5        int i=1;
           6        YOUR_CLASS[] oArray=(YOUR_CLASS[]) JSONArray.toArray(jsonArray, jc);
           7        for(YOUR_CLASSfms : oArray){
           8            list.add(fms);
           9        }

          2.json-->YOUR_CLASS
          1        JSONObject json=JSONObject.fromObject(fmsStr);
          2        FMS fms=(FMS)JSONObject.toBean(json, FMS.class);
          3.json--> bean轉(zhuǎn)換日期格式
          1           JSONObject json=JSONObject.fromObject(fmsStr);
          2       String[] dateFormats = new String[]  {"yyyy-MM-dd"};
          3          JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(dateFormats));
          4          FMS fms=(FMS)JSONObject.toBean(json, FMS.class);
          5
          6其中fms有一個屬性day:1991-12-2
          4.json-->bean過濾一些不需要或json字符串中沒有賦值的項使用JSONConfig
                  JSONArray jsonArray = JSONArray.fromObject([{a:"astr",b:"bstr",c:"cstr",d:"dstr"},{a:"astr1",b:"bstr1",c:"cstr1",d:"dstr1"}]);
                  JsonConfig jc
          =new JsonConfig();
                  jc.setRootClass(FMS.
          class);
                  String[] dateFormats 
          = new String[] {"yyyy-MM-dd"};
                  JSONUtils.getMorpherRegistry().registerMorpher(
          new DateMorpher(dateFormats));
                  jc.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);
                  jc.setJsonPropertyFilter(
          new PropertyFilter(){
                      
          public boolean apply(Object sourse, String name, Object value) {
                          
          if(name.equals("a")||name.equals("b")||name.equals("c")||name.equals("d")){
                              
          return true;
                          }

                          
          else{
                              
          return false;
                          }

                      }

                      
                  }
          );
                  FMS[] oArray
          =(FMS[]) JSONArray.toArray(jsonArray, jc);


          FMS
          -->有 a b c d 屬性



          posted on 2009-07-10 14:18 star11th 閱讀(713) 評論(0)  編輯  收藏 所屬分類: 周邊技術(shù)


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          統(tǒng)計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 朝阳市| 黎城县| 渝北区| 东平县| 吴旗县| 工布江达县| 章丘市| 南部县| 安西县| 赤水市| 邓州市| 福清市| 安仁县| 上虞市| 弥渡县| 广饶县| 霍城县| 建始县| 奎屯市| 濮阳县| 陕西省| 和平区| 商丘市| 双柏县| 门源| 抚远县| 通许县| 彰化县| 巴彦县| 肥西县| 鄂托克前旗| 石阡县| 库尔勒市| 德江县| 富平县| 东莞市| 大邑县| 凌云县| 南平市| 拜城县| 蒙山县|