更通俗的方式来理解 XML、JSON 和 YAML 的区别,就像用不同格式写同一件事(比如记录一个人的信息):

场景举例:记录 "小明的信息"

假设我们要记录:小明,25 岁,邮箱是 xiaoming@test.com,爱好是篮球和游戏。

1. XML 格式

就像写一封格式严谨的 "正式书信",必须用 <标签> 把内容包起来,结构很规范但有点啰嗦:

xml

<person>
  <name>小明</name>
  <age>25</age>
  <contact>
    <email>xiaoming@test.com</email>
  </contact>
  <hobbies>
    <hobby>篮球</hobby>
    <hobby>游戏</hobby>
  </hobbies>
</person>

特点:标签成对出现(<name> 和 </name>),适合需要严格规范的场景(比如银行、政府数据交换),但写起来麻烦,文件也大。

2. JSON 格式

就像写一份 "简洁的清单",用 {} 当容器,: 连接键和值,, 分隔项目,比 XML 清爽:

json

{
  "person": {
    "name": "小明",
    "age": 25,
    "contact": {
      "email": "xiaoming@test.com"
    },
    "hobbies": ["篮球", "游戏"]
  }
}

特点:没有冗余标签,用括号和逗号组织,适合程序之间快速交换数据(比如网页和服务器通信),但不能写注释,结构复杂时可读性下降。

3. YAML 格式

就像写一篇 "手写笔记",用缩进表示层级(就像写文章分段),不用括号和标签,最像自然语言:

yaml

person:
  name: 小明
  age: 25
  contact:
    email: xiaoming@test.com
  hobbies:
    - 篮球  # 最喜欢的运动
    - 游戏  # 周末常玩

特点:用空格缩进(类似写文章的段落),支持 # 加注释,人类看起来最舒服,适合写配置文件(比如程序的设置项),但对缩进要求严格(多一个空格就会出错)。

一句话总结

  • XML:规矩多、最正式,适合严肃的复杂数据交换。
  • JSON:简单直接,程序最爱,适合数据传输。
  • YAML:像手写笔记,人类易读,适合写配置。

根据场景选就行:传输数据用 JSON,配置程序用 YAML,严格规范的场景用 XML。

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐