首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >验证和格式化JSON,而不按字母顺序对数据进行“jsonlint”排序

验证和格式化JSON,而不按字母顺序对数据进行“jsonlint”排序
EN

Ask Ubuntu用户
提问于 2015-11-10 12:10:50
回答 1查看 2.1K关注 0票数 2

python-demjson提供jsonlint命令。

我用它来格式化我的JSON数据:

代码语言:javascript
复制
jsonlint -f input.json > output.json

但是数据不再按原来的顺序排列,它按字母顺序对<key:value>进行排序:

Orignal JSON:

代码语言:javascript
复制
{"beta":123, "alpha":123}

jsonlint之后:

代码语言:javascript
复制
{ "alpha":123
  "beta":123 
}  

我可以禁用jsonlint中的字母排序吗?

还是应该使用其他的JSON验证器呢?请只建议离线工具。

  • 操作系统: Ubuntu 14.04
EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2015-11-10 12:26:33

摘录自jsonlint的手册:

代码语言:javascript
复制
[...]


-f, --format
      Reformat the JSON (if legal) to stdout

[...]

    When reformatting, all members of objects  (associative  arrays)
    are  always  output  in  lexigraphical  sort order.

[...]

这意味着,如果使用-f选项重新格式化JSON数据,这个工具将始终按字母顺序对条目进行排序。

你必须寻找替代软件来做到这一点。我会编辑这个答案,并添加一些,如果我找到任何。

  • 您可以查看所有验证都由客户端完成的站点http://www.json.fr/,这意味着您可以将站点保存在计算机上(保存完整的站点,而不仅仅是HTML!)然后仍然通过在浏览器中打开下载的文件脱机使用它。它不会通过排序来改变元素的顺序。示例输入变为:{ "beta":123,"alpha":123 }
票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/696222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档