【百度云盘项目实践(1)】:探索JSON与Bundle库的结合应用

2024-07-14 1190阅读

 【百度云盘项目实践(1)】:探索JSON与Bundle库的结合应用

hello !大家好呀! 欢迎大家来到我的Linux项目实战系列之《【百度云盘项目实践】:探索JSON与Bundle库的结合应用》,在这篇文章中,你将会学习到json数据格式,bundle库内对文件进行压缩与解压缩的过程,以及手绘UML图来帮助大家来理解,希望能让大家更能了解网络编程技术!!!

希望这篇文章能对你有所帮助,大家要是觉得我写的不错的话,那就点点免费的小爱心吧!(注:这章对于高性能服务器的实现非常重要哟!!!)

【百度云盘项目实践(1)】:探索JSON与Bundle库的结合应用           

目录

 一.Json

 1.1 json数据

JSON对象

JSON数组

JSON语法规则

JSON与C++的结合使用

1.2 Value实例

主要特性

常用操作

使用场景

1.3 json数据的序列化与反序列化

newStreamWriter()

newCharReader()

1.4 代码实例

二. bundle库 

文件压缩:

 文件解压:


 

 一.Json

 1.1 json数据

        

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于JavaScript编程语言的一个子集,但因其文本格式清晰、易于解析和生成,被广泛用于数据交换和存储。JSON格式支持的数据结构包括对象(Object)和数组(Array)。

JSON对象

JSON对象是一个无序的键:值对集合。每个键值对中的键是一个字符串,后跟一个冒号,然后是值。值可以是字符串、数值、布尔值、数组、对象或null。例如:

{
  "name": "张三",
  "age": 30,
  "isStudent": false,
  "courses": ["数学", "物理", "化学"],
  "address": {
    "city": "北京",
    "street": "长安街"
  }
}

在这个例子中,name、age、isStudent、courses和address是键,它们对应的值分别是字符串、数值、布尔值、数组和另一个对象。

JSON数组

JSON数组是一个有序的值列表,可以通过索引访问。数组中的值可以是字符串、数值、布尔值、数组、对象或null。例如:

[
  {
    "name": "张三",
    "age": 30
  },
  {
    "name": "李四",
    "age": 25
  }
]

这个例子中,数组包含两个对象,每个对象都有name和age属性。

JSON语法规则

  • 数据在键值对中
  • 数据由逗号分隔
  • 花括号保存对象
  • 方括号保存数组

    JSON与C++的结合使用

    在C++中,可以使用如nlohmann/json等库来解析和生成JSON数据。例如,使用这个库解析上述JSON对象:

    #include 
    #include 
    using json = nlohmann::json;
    int main() {
        std::string jsonString = "{\"name\": \"张三\", \"age\": 30}";
        json j = json::parse(jsonString);
        std::cout 
VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]