json文件是什么 - 简书

最近,因为要做一份工作:即集成下载管理中的Python脚本。

在那里面我发现Python处理的文本后缀是.json。

这让我有些好奇,json文本到底是什么呢?

后来网上查阅,发现一个网友写的很好。他翻阅的是一种叫做yaml的简化数据交换格式的帮助文档,发现了一段非常经典的话。


该文档说,从结构上看,所有的数据(data)最终可以分解成三种类型:

第一种类型是标量scalar,也就是一个单独的字符串string或数字numbers,比如“成都”这个单独的词。

第二种类型是序列sequence,也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组array,或者列表list,比如“成都,重庆”。

第三种类型是映射mapping,也就是一个名/值name/value,即数据有一个名称,还有一个与之相对应的值,这又称作散列hash或字典dictionary,比如“蓉城:成都”。

是啊,原来数据构成的最小单元经如此简单。难怪在编程语言中,只要有了数组array和对象object就能够存储一切数据了。


那么json呢?json这种文本文件又是怎么存储数据的呢?

21世纪初。Douglas crockford寻找一种简便的数据交换格式,能够在服务器之间交换数据。当时通用的数据交换语言是xml,但是Douglas crockford觉得xml的生成和解析都太麻烦,所以他提出了一种简化格式,也就是json。

json的格式非常简单,只用一个页面几百个字就能说清楚,而且Douglas crockford声称这个规格永远不必升级,因为该规定的都规定了。


1.并列的数据之间用逗号(,)分隔

2.映射用冒号(:)表示

3.并列数据的集合(数组)用方括号([])表示

4.映射的集合(对象)用大括号({})表示

以上四条规则,就是json格式的所有内容。

由此可见,json非常易学易用,所以,在短短几年中,她就取代了xml,成为了互联网上最受欢迎的数据交换格式。

作者:罗蓁蓁
链接:https://www.jianshu.com/p/986701acb442
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

json文件是什么?相关推荐

  1. Json文件解析(下

    Json文件解析(下) 代码地址:https://github.com/nlohmann/json 从STL容器转换 任何序列容器(std::array,std::vector,std::deque, ...

  2. Json文件解析(上)

    Json文件解析(上) 代码地址:https://github.com/nlohmann/json 自述文件 alt=GitHub赞助商 data-canonical-src="https: ...

  3. VsCode允许JSON文件注释

    打开设置面板 输入Files: Associations搜索出此项 在此处添加项: 项 *.json 值 jsonc 然后你的JSON文件注释就不报错了~

  4. Go 学习笔记(20)— Go 操作 json 文件(编码生成 json、解码 json 为 map、解码 json 为 struct)

    1. Json 概述 Go 语言对于标准格式的编码和解码都有良好的支持,由标准库中的 encoding/json . encoding/xml . encoding/asn1 等包提供支持并且这类包都 ...

  5. Newtonsoft.Json文件错误

    今天,在一个项目中使用signalR,由于项目框架是.net 4.0,所以用signalR1.0版本,signalR使用需要newtonsoft.Json文件,它把原  newtonsoft.Json ...

  6. Echarts读取本地json文件渲染轨迹,亲测ok

    Echarts读取本地json文件渲染轨迹,亲测ok 1. 报错及解决 2. 效果图 3. 源码lines-track.html如下 参考 1. 报错及解决 报错:由于浏览器的同源策略 已拦截跨源请求 ...

  7. IDEA Java解析GeoJson.json文件

    IDEA Java解析GeoJson.json文件 一.遇到的问题 1. 无法导入成功 2. org.geotools.StyleFactory is not an ImageIO SPI class ...

  8. netcore读取json文件_.net core读取json格式的配置文件

    在.Net Framework中,配置文件一般采用的是XML格式的,.NET Framework提供了专门的ConfigurationManager来读取配置文件的内容,.net core中推荐使用j ...

  9. Angular应用中tsconfig.json文件配置说明及配置全局路径映射

    tsconfig.json文件配置说明 1. tsconfig.json文件中的选项配置 2. 配置全局路径映射 1. tsconfig.json文件中的选项配置 TypeScript编译器配置文件的 ...

  10. C++简单使用Jsoncpp来读取写入json文件

    一.源码编译 C++操作json字符串最好的库应该就是jsoncpp了,开源并且跨平台.它可以从这里下载. 下载后将其解压到任意目录,它默认提供VS2003和VS2010的工程文件,使用VS2010可 ...

最新文章

  1. 一种清除windows通知区域“僵尸”图标的方案——问题分析
  2. 关于pyecharts 地图显示添加数据的问题
  3. redis的主从复制,读写分离,主从切换
  4. Scrapy002-框架安装
  5. dataGridView1.Rows[i].DefaultCellStyle.BackColor = Color.Gold;第一次无效
  6. 125KHz 100cm ID 读卡电路_智能卡制作频率13.25MHZ与125KHZ的区别
  7. Hibernate使用原生SQL适应复杂数据查询
  8. Struts2之控制标签
  9. Linux下安装vim
  10. C语言累加函数代码,ARM汇编程序---通过ARM汇编调用C语言函数实现累加
  11. vb treeview icon 可以使用位图吗_table标签经典案例,综合使用行合并与列合并实现html网页表格【2020网页综合笔记03】...
  12. PAgP协议与LACP协议
  13. 十五分钟了解朱利亚集
  14. layer.open打不开弹窗的问题
  15. 用Excel生成频率分布表及频率分布直方图
  16. uniapp自定义搜索组件实现全部功能
  17. python 使用爬虫下载京东图片
  18. 【Anaconda3】anaconda的下载与安装
  19. 初学者指南:如何毫不费力地优化Jupyter笔记本?
  20. 【愚公系列】2022年09月 微信小程序-WebGL画渐变色正方形

热门文章

  1. 计算机恢复桌面,桌面图标打开方式怎么还原_电脑图标打开方式恢复方法-win7之家...
  2. 【Matlab图像处理】自动报靶系统(重弹孔)【含GUI源码 973期】
  3. 有关win10的C:/ProgramFiles\WindowsApps\文件系统错误(12007)问题
  4. graphpad prism横坐标怎么设置不显示数值_graphpad,prism,符号显示有问题
  5. 如何开展业务是我在离开X网之后重新学的
  6. jzoj5442. 【NOIP2017提高A组冲刺11.1】荒诞
  7. 前端 关于汇率的计算
  8. 超鸿蒙 混希夷 寂寥,下列句子与“故凡为愚者.莫我若也 的句式不同的一项是 A.超鸿蒙.混希夷.寂寥而莫我知也 B.而良人未之知也 C.及长.不省所怙.惟兄嫂是依 D.王语暴以好乐...
  9. 全网最详细!vue中使用flv.js 播放直播监控视频流
  10. php中hr标签的用法,HTML: hr 标签