2

我有大量的文件结构如下:

// NAME = XXXX
// MARKER = YYYY
// SOURCE = ZZZZ
# Real data follows, one item per line
Item1
Item2
Item3

我正在尝试摆脱这种传统格式,因为解析起来很麻烦(有时有 3 // 行,有时是 4 行):鉴于 Item1 等...列表不长(最多 400 项左右)我正在考虑一个合适的替代品。绝对必要的是基于文本的。

我想到了两个想法:

  1. 使用 JSON
  2. 保持数据不变,但将标题压缩在一行

然而,目标是尽可能避免自定义解析(这些文件的主要问题)并依赖构建的解析器(在我的特定情况下是 Python 解析器)。假设我选择 1,那么 JSON 实际上是一个合适的选择吗?

4

2 回答 2

4

以下是支持 JSON 的一些原因:

  • 它是人类可读的
  • 它不像 XML 那样冗长
  • Python 有一个用于读取/写入 JSON的内置库
  • JSON 不是 Python 特定的(与configparser不同)。其他语言也可以解析JSON

JSON 的一个可能问题:

  • 必须读取整个 JSON 才能进行解析。如果 JSON 很大,这可能是一个(内存)问题。
于 2012-10-08T10:17:35.290 回答
2

在企业环境中,我更喜欢 XML,因为它具有成熟的验证选项、数据类型规范和非 unicode 支持。

我知道 JSON 也有一个草案 Schema 规范,如果你沿着 JSON 路线走,这将是值得使用的。

于 2012-10-08T10:35:37.083 回答