【问题标题】:To output the merged file into a json file将合并后的文件输出到 json 文件中
【发布时间】:2019-04-23 08:56:31
【问题描述】:

请告诉我如何将 2 个 json 文件合并成一个新的 json 文件。

我使用了 jq ,并使用了以下命令:

jq -s add file1.json file2.json > Output.json

但我没有得到 json ascii 编码的输出。传递时出现错误:

无法解析模板:解析 JSON 时出错:无效字符 'ÿ' 正在寻找值的开头

请告诉我如何在 windows 命令提示符下输出到 json 文件。

【问题讨论】:

  • 请遵循minimal reproducible example 准则。
  • 看起来像是这个bug的转世。也许-s 暴露了它。
  • 那我该如何解决呢?
  • JSON 文件应该是 UTF-8。对于 UTF-8,使用 BOM 是可选的(在我的书中,它要求读者处理它,这就是我称之为错误的原因)。您可以从 jq 之外的文件中删除 BOM。

标签: json jq filemerge


【解决方案1】:

由于jq 不需要有效的 JSON 来读取文件,任何 JSON 流都可以,我建议您只需附加这两个文件

cat file1.json >> file2.json

也就是说,我相信你可以使用jq -s '.[0] * .[1]' file1 file2来合并两个JSON文件

见:How to merge 2 json file using jq?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-02
    • 1970-01-01
    • 2021-05-04
    相关资源
    最近更新 更多