• JAVA如何解析JSON格式的字符串?
  • 老刀 发表于 2016/3/3 13:18:00 | 分类标签: JSON 字符解析 格式转换
  • 首先准备一个JSON格式的字符串
    * String JsonStr = "{object:{persons:" +
    "[{name:'呵呵',image:'http://10.0.159.132:8080/Web/s1.png'}," +
    "{name:'哈哈',image:'http://10.0.159.132:8080/Web/s1.png'}," +
    "{name:'嘿嘿',image:'http://10.0.159.132:8080/Web/s2.jpg'}]}}";
     然后定义一个Person类
    class Person{
    private String name,image;
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public String getImage() {
    return image;
    }
    public void setImage(String image) {
    this.image = image;
    }
    }
    下面是一个Json解析的程序代码
    class MyDay17Xml {
    //json字符串
    static String JsonStr = "{object:{persons:" +
    "[{name:'呵呵',image:'http://10.0.159.132:8080/Web/s1.png'}," +
    "{name:'哈哈',image:'http://10.0.159.132:8080/Web/s1.png'}," +
    "{name:'嘿嘿',image:'http://10.0.159.132:8080/Web/s2.jpg'}]}}";

    public static void main(String []args) throws JSONException{
    List<Person> list=jsonStrToList(JsonStr);
    System.out.println(list.size());
    }
    /**
    *
    *
    *
    */
    public static List<Person> jsonStrToList(String jsonStr) throws JSONException{
    List<Person> list=new ArrayList<Person>();

    //通过字符串,获得最外部的json对象
    JSONObject jsonObj=new JSONObject(jsonStr);
    //通过属性名,获得内部的对象
    JSONObject jsonPersons=jsonObj.getJSONObject("object");
    //获得json对象组
    JSONArray arr=jsonPersons.getJSONArray("persons");
    for(int i=0;i<arr.length();i++){
    //循环对象,并通过getString("属性名");来获得值
    JSONObject tempJson=arr.getJSONObject(i);
    Person person=new Person();
    person.setName(tempJson.getString("name"));
    person.setImage(tempJson.getString("image"));
    list.add(person);
    }
    return list;
    }
    }
  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:老刀
  • 加入时间:2013/5/15 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮