ExpressionJSON (.json)

背景

    • MIME 类型:application/json.
    • 数据交换格式.
    • ExpressionJSON 给 JSON 提供了 Wolfram 语言表达式的表示方法.
    • JSON 常被用于网络编程.
    • JSON 是衍生于 JavaScript 对象表示法(JavaScript Object Notation)的缩写.
    • JSON 是基于 JavaScript 编程语言的子集.
    • 纯文本格式.
    • JSON 开发于2001年.
    • JSON 出版为 RFC 4627.

Import 与 Export

  • Import["file","ExpressionJSON"] 导入使用 ExpressionJSON 格式的文件,生成一个普通 Wolfram 语言表达式.
  • Export["file",expr,"ExpressionJSON"] 向 ExpressionJSON 导出任意表达式.
  • ExpressionJSON 中,表达式的参数由如下形式表示:
  • "string""'string'" (UTF-8,带有 JSON 转码)
    True, Falsetrue, false
    Nullnull
    symbol"symbol" (UTF-8)
    f[e1,e2,,opt1val1,]["f",e1,e2,,["Rule",opt1,val1],]
  • 机器整数按字面意思表示. 大整数由 "digits" 表示.
  • 请到以下参考页面了解完整的基本信息:
  • Import, Export从文件导入或导出到文件
    CloudImport, CloudExport从云对象导入或导出到云对象
    ImportString, ExportString从字符串导入或导出到字符串
    ImportByteArray, ExportByteArray从字节数组导入或导出到字节数组

Import 参数

  • Import 的通用参数:
  • "Elements" 该文件可用的参数和选项列表
    "Summary"文件摘要
    "Rules"所有可用参数的规则列表

选项

  • Export 选项:
  • "Compact"False是否省略分行符和跳格符
    "NullSymbols"{}表示为 JSON null 的符号列表
    "PrecisionHandling"True是否允许大数或发送信息
  • "Compact"->n 包括分行符和跳格符以缩进第 n 层.

范例

基本范例  (5)

导入 JSON 列表:

导入字符串 String

导入一个数量 Quantity

向 JSON 字符串导出表达式:

在将 None 转换成 JSON null 时导出列表:

导出一串任意精度数字的列表:

导出一个数字列表,并在存在非机器精度数字的情况下发布错误信息:

使用 "Compact" 来限制缩进,可控制输出格式: