YAML 和 JSON 有什么区别,具体考虑以下几点?
我打算在我们的嵌入式系统中使用这两个中的一个来存储配置文件。
从技术上讲,YAML 是 JSON 的超集。这意味着,至少在理论上,YAML 解析器可以理解 JSON,但不一定反过来。
请参阅标题为“YAML:与 JSON的关系”的部分中的官方规范。
一般来说,我喜欢 YAML 的某些东西在 JSON 中不可用。
在实践中,最后两点可能对你或我所做的事情都不重要,但从长远来看,我认为 YAML 将是一种更健壮和可行的数据序列化格式。
目前,AJAX 和其他 Web 技术倾向于使用 JSON。YAML 目前更多地用于离线数据处理。例如,它默认包含在基于 C 的 OpenCV 计算机视觉包中,而 JSON 则不包含。
您将找到适用于 JSON 和 YAML 的 C 库。YAML 的库往往较新,但过去我对它们没有任何问题。参见例如Yaml- cpp。