有没有办法可以在控制台中验证文件是否为json格式(不会丢失逗号或其他内容)?

时间:2014-11-28 02:38:21

标签: json node.js

那就是它,我是一个粗心的家伙,我总是想念一些东西,或者如果我正在写一个json的话。 我想也许我们可以利用irb。

3 个答案:

答案 0 :(得分:1)

在查看Node之前,请查看您的编辑器。它是否有插件(比方说,Sublime Text)?如果是这样,请安装一个JSON linter / validator,在您修复错误之前不会让您保存。问题解决了。

没有这样的运气?考虑使用grunt或gulp和一个简单的JSON验证器任务(“寻找** / * .json,检查那个”)。例如https://www.npmjs.org/package/grunt-jsonlinthttps://www.npmjs.org/package/gulp-jsonlint ...

或者,即使只使用普通的https://www.npmjs.org/package/jsonlint来检查单个文件。

这是一个已解决的问题,请选择您最喜欢的解决方案。

答案 1 :(得分:0)

我找到一个超级简单的,只需使用node,然后需要这个json文件。

答案 2 :(得分:0)

您始终可以创建别名:

alias jsonlint="echo \"try{JSON.parse(require('fs').readFileSync(process.argv[2])); process.exit(0);}catch(e){process.exit(1);}\" | node"

并使用它:

jsonlint some_file.json

或者如果您不想要错误输出

jsonlint some_file.json 2>/dev/null

尽管Snowmanzzz说过,require('some_json.json')并不能保证将文件检测为JSON(特别是如果它没有.json扩展名)。