用于转换旧数据的文件格式

时间:2012-10-08 10:04:19

标签: python json file-format legacy

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

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

我试图摆脱这种遗留格式,因为它很难解析(有时候有3条线,有时是4条):鉴于Item1等等......列表不是很长(最多400件左右)我在想一个合适的替代品。绝对必要的是基于文本。

我想到了两个想法:

  1. 使用JSON
  2. 保持数据不变,但将标题压缩在一行
  3. 然而,目标是避免尽可能地自定义解析(这些文件的主要问题)并依赖于构建的解析器(在我的特定情况下是Python的解析器)。 假设我选择1,JSON实际上是一个合适的选择吗?

2 个答案:

答案 0 :(得分:4)

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

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

JSON可能存在的一个问题:

  • 必须读取整个JSON才能解析。这可能是(记忆)问题 如果JSON很大。

答案 1 :(得分:2)

在企业环境中,由于其成熟的验证选项,数据类型规范和非unicode支持,我的偏好是XML。

据我所知,JSON还有一个Schema规范草案,如果沿着JSON路线走下去,值得使用。