美文网首页Cocos2d-X与游戏开发cocos2d-xcocos2d-Lua
六,cocos2d-lua中json数据交换格式

六,cocos2d-lua中json数据交换格式

作者: 亮亮同学 | 来源:发表于2017-11-08 00:29 被阅读10次

    cocos2d-x技术群新群:117871561
    c++技术交流群:593010226

    这里不死抠cocos-lua组件的原理, 重在快速上手使用, 只针对快速开发,所以我尽量用简洁 易懂的 文笔去阐述。

    在一个公司里能运用手上的知识 快速的完成一个功能才是最好的,也可已根据自己的能力和时间 去选择是不是要深入的了解这些组件及功能。毕竟还是需要下班充电的。

    当然我的文章 也会根据我对cocos2d-lua的了解程度 不断更新,完善,希望对你有用

    综述:JSON(javaScript Object Notation)轻量级数据交换格式

    优点:传输速度快,传输流量少

    结构:
    1,对象

    对象是一个“名称-值”对的集合 以{开始  以 }结束 每个名称后跟:  每个“名称-值”后用逗号隔开  如下:
    
      {string:value,string:value}
    
    示例:
    {
    “name”:“hanmeimei”,
    "age":23,
    "isgirl":true
    }
    

    2,数组

    数组是值得有序集合 跟c,c++数组类似,数组的元素可以是string,number,object,array ,true,false,null
    
    [value,value,......]
    
    示例:
    ["lilei",true,null,6]
    

    JSON解码
    cocos2d-x lua封装了 JSON4Lua库 所以可以直接拿来用

    解码函数json.decode(jsonObj)

    --创建一个JSON对象
    local jsonStr = {"name":"hanmeimei","age":23}
    --解码对象
    lcoal jsonObj =json.decode(jsonStr)
    cclog("name%s:",jsonObj["name"])
    cclog("age%d:",ojsonObj["age"])
     
    
    --创建一个数组
    local jsonStr = 
    [
     {"name":"hanmeimei","age":23}
     {"name":"lile","age":25}
    ]
    --解码数组
    local jsonArray = json.decode(jsonStr)
    for i = 1, table.getn(jsonArray) do
      local obj = jsonArray[i]
      cclog("name%s:",obj["name"])
      cclog("age%d:",obj["age"])
    end
    

    JSON编码

    将JSON对象或数组转变为JSON字符串解析,以便于存储和网络中数据传输
    编码函数json.encode(jsonObj)

    编码对象
    local jsonObj= {"name":"hanmeimei","age":23}
    cclog("jsonObj:%s",json.encode(jsonObj)) 
    
    编码数组
    local jsonArray= 
    [
     {"name":"hanmeimei","age":23}
     {"name":"lile","age":25}
    ]
    cclog("jsonArray:%s",json.encode(jsonArray))
    

    相关文章

      网友评论

        本文标题:六,cocos2d-lua中json数据交换格式

        本文链接:https://www.haomeiwen.com/subject/wresmxtx.html