你这个不是标准的json 格式啊。

解决方案 »

  1.   

    你可以先创建一个对象,然后把对象转换成JSON  ,打出来看看json的格式,然后再把你那个转成对象
      

  2.   

    你可以下载个jar包,把object自动转换成Json形式,接着对json进行操作就行了
      

  3.   

    你想要转成JAVA对象的话,然后你可以使用Json-lib或者是Gson来转一下,我给你列举一个Json-lib的转换方法吧
    Province p1=new Province(1,"四川省");
      Province p2=new Province(1,"浙江省");
      Province p3=new Province(1,"山西省");
      List<Province> list=new ArrayList<Province>();
      list.add(p1);list.add(p2);list.add(p3);
       response.setHeader("content-type", "text/html;charset=utf-8");
      PrintWriter pw=response.getWriter();
      JsonConfig config=new JsonConfig();
      //使用这个方法可以将不需要转成json格式的字段 屏蔽掉
      config.setExcludes(new String[]{"id"});
      //将一个集合转换成json格式
      String data=JSONArray.fromObject(list,config).toString();
      //讲一个对象转换成Json格式,同样可以使用JsonConfig屏蔽不想要转换的字段
      String data2=JSONObject.fromObject(p1).toString();
      System.out.println(data);我给你列举的是将对象转成Json,当然其中也有将json转成对象的方法
    包:
                由于不能上传,所以你去下载一个就是了,总共需要8个jar包,Gson的话你可以百度一下,都是大同小异的,需要的包要少点
    但是注意你的Json数据一定要是Json格式的

      

  4.   

    话说直接用json-lib.jar不久搞定了么!!!
      

  5.   

     对,网上有很多包,都可以搞定。
    lizi
      

  6.   

    给你参考参考
    private static void test() {
    TblAreaCodeDTO  dto1  =new TblAreaCodeDTO();
    dto1.setId("1a");
    dto1.setAreaName("haha");
    TblAreaCodeDTO  dto2  =new TblAreaCodeDTO();
    dto2.setId("1b");
    dto2.setAreaName("baba");
    TblAreaCodeDTO  dto3  =new TblAreaCodeDTO();
    dto3.setId("1c");
    dto3.setAreaName("dada");
    List<TblAreaCodeDTO> list=new ArrayList<TblAreaCodeDTO>();
    list.add(dto1);
    list.add(dto2);
    list.add(dto3);
    JsonConfig j=new JsonConfig();
    //过滤的属性
    j.setExcludes(new String[]{"pageNo","pageSize","parentId","multipartRequestHandler","servletWrapper","sortIndex"});
    net.sf.json.JSONArray jj=net.sf.json.JSONArray.fromObject(list, j);//对象过滤属性后转json
    System.out.println(jj);
    TblAreaCodeDTO td=new TblAreaCodeDTO();
    Object[] ob=new Object[jj.size()];
    for (int i = 0; i < jj.size(); i++) {
    JSONObject jsj=jj.getJSONObject(i);
    ob[i]=jsj.toBean(jsj, TblAreaCodeDTO.class);

    }
    //json转对象
    for (int i = 0; i < ob.length; i++) {
    td=(TblAreaCodeDTO)ob[i];
    }
    System.out.println("-ID=:"+td.getId()+"----name=:"+td.getAreaName());

    }