zoukankan      html  css  js  c++  java
  • json格式的简单转换

    JSON:ajax向客户端响应的内容有多个值或是一个对象时,人们提供了一项技术json
      json的基本格式是:{"id":1001,"name":"蓝星"},我们直接输出json对象时结果是就是这种格式
       可以把json对象转化字符串:String str=json.toString();来得到json对象内的内容;

     
    一、在java中写法:
     //json格式的字符串,单个的和数组类型的
         String json1="{"id":1001,"name":"蓝星"}";
         String json2="[{"id":1001,"name":"蓝星"},"
           + "{"id":1001,"name":"蓝星"},"
           + "{"id":1001,"name":"蓝星"},"
           + "{"id":1001,"name":"蓝星"}]";
         System.out.println(json1);
         System.out.println(json2);
    1:怎样把java对象中封装的内容转化为json格式?
     JSONObject json1=JSONObject.fromObject("对象");
    2:把json对象转换为字符串?(注意:json和转化后的字符串输出结果可能相同,但一个是json对象,一个是字符串)
     String str=json1.toString();
    3:怎样把json对象中的内容输出来
       json1={"id":1001,"name":"蓝星"};
       person per=(person)json1.toBean(json1, person.class);----把json中的内容转化封装在javabean对象中
       System.out.println(per.getName());-----------------------把javabean对象中的值输出来
    4:怎样把集合中的内容封装在json对象中;
    JSONArray jsonarray=JSONArray.fromObject(list);-------------打印jsonarray输出json格式的数组,list中是一个个的对象
    5:把json数组转化为字符串
    String array=jsonarray.toString();--------------------------和单个对象一样
    6:怎样把json数组内容输出来
    Collection coll=jsonarray.toCollction(jsonarray,person.class);---将json中的内容保存在一个集合中
       for(person p1:coll){
          System.out.println(p1);
         }--------------------------------------------------------用循环的方式输出集合中的对象,一定是对象

    二、在javascrip中的写法:
     
    1:在javascript中创建对象,并向对象中添加数据
    function lan(id,name){
     this.id = id;
        this.name = name;
        this.getId = function(){
      return this.id;    
        }
        this.getName = function(){
         return this.name;
        }
        this.setId = function(id){
         this.id = id;
        }
        this.setName = function(name){
         this.name = name;
        }
    }
        ================================一条数据的转化格式========================
    var lan1=new lan(1001,"蓝星");----向javascript对象中添加数据
    2:将javascript对象中的数据转化为json格式;
    var json1=JSON.stringify(lan1);------------输出结果是:{"id":1001,"name":"蓝星"}----------json格式
    3:将json转化为字符串
    var json2=JSON.stringify(json1);----------输出的结果是:"{"id":1001,"name":"蓝星"}"---字符串格式
    var json2_1=JSON.stringify(json1);-------输出结果是:""{\"id\":1001,\"name\":\"蓝星\"}""
    4:将json中的值转化为javascript对象,然后再把对象中值输出来
    var js=JSON.parse(json1);----------------将json中的内容封装在javascript对象中
    alert(js.name+"-----"+js.id);---------输出对象中的值
    ========================多条数据的转化格式==================================
    在js中创建一个数组--------将页面的多个值放在数组中
    1:添加的是一个个的值,不是对象,json解析式
     var arr=new Array();
        arr.push("蓝星");
        arr.push("红心");
        arr.push("白皙");
        arr.push("紫嫣");
     1)  alert(arr);-----------得到的结果是:=====  蓝星,红心,白皙,紫嫣
       alert(arr[0]);--------得到的结果是:=====蓝星
     2):将js数组转化为json格式字符串
    var json3=JSON.stringify(arr);
    alert(json3);----------得到的结果是json格式的字符串:"["蓝星","红心","白皙","紫嫣"]"
     3):将json格式的字符串转化为json格式的数组
    var json4=JSON.parse(json3);
    alert(json4);----------------//得到的结果是json格式的数组:["蓝星","红心","白皙","紫嫣"]
     4):将json格式的数组转化为js格式的数组
    var json4=JSON.parse(json4);
    alert(json4);---------------------得到的结果是:蓝星,红心,白皙,紫嫣
    alert(json4[0]);------------------得到结果是:蓝星
    2:如果添加的是一个个的对象
     var arr=new Array();
     arr.push(new lan(1001,"蓝星"));
     arr.push(new lan(1002,"蓝星2"));
     arr.push(new lan(1003,"蓝星3"));
     arr.push(new lan(1004,"蓝星4"));
     1)alert(arr);---结果是:[Object,Object],[Object,Object],[Object,Object],[Object,Object]
        alert(arr[0].name);-----得到的结果是:蓝星
    var json3=JSON.stringify(arr);
     2)alert(json3);--结果是[{"id":1001,"name":"蓝星"},{"id":1001,"name":"蓝星2"},
                            {"id":1001,"name":"蓝星3"},{"id":1001,"name":"蓝星4"}]
    var json4=JSON.parse(json3);
    //var json4=eval("("+json3+")");
     3)alert(json4);--结果[Object,Object],[Object,Object],[Object,Object],[Object,Object]
    alert(json4[0].name);-----得到的结果是:蓝星

    总结:==========
    JSON.stringify:用处:
     1:将json格式的数组或是json格式转化为字符串
     2:将js对象转化为json格式
    1)js对象是普通对象==转化为json格式对象
              "{"id":1001,"name":"蓝星"}"
    2)js对象是数组==转化为json格式的数组
            [{"id":1001,"name":"蓝星"},{"id":1001,"name":"蓝星 
             2"}, {"id":1001,"name":"蓝星3"},{"id":1001,"name":"蓝星4"}] 
    JSON.parse:用处
     1:将json格式对象或是json数组,转化为js对象或是js数组
      1)"{"id":1001,"name":"蓝星"}"===..parse转化后=[Object,Object]
      2)[{"id":1001,"name":"蓝星"},{"id":1001,"name":"蓝星 
             2"}, {"id":1001,"name":"蓝星3"},{"id":1001,"name":"蓝星4"}]
           通过JSON.parse转化后如下:
          [Object,Object],[Object,Object],[Object,Object],[Object,Object]

  • 相关阅读:
    TensorFlow中的基本概念
    理解 tf.Variable、tf.get_variable以及范围命名方法tf.variable_scope、tf.name_scope
    深度神经网络关键词解释
    [python] os.path.join() 与 sys.path
    Git 遇到的坑
    [转] 资深程序员得到的职场经验教训
    VS CODE 快捷键
    解决VS Code使用code runner开发Python乱码问题
    熵,条件熵,互信息,交叉熵
    Visual Studio Code 支持TensorFlow配置支持
  • 原文地址:https://www.cnblogs.com/xueershewang/p/6781902.html
Copyright © 2011-2022 走看看