格式化大JSON文件的最佳方法?(~30 mb)

sshcrbum  于 2023-02-26  发布在  其他
关注(0)|答案(5)|浏览(218)

我需要格式化一个大的JSON文件以提高可读性,但是我找到的每一个资源(大多数是在线的)都不处理1-2 MB以上的数据。我需要格式化大约30 MB。有没有办法做到这一点,或者有没有办法编写代码来做到这一点?

g2ieeal7

g2ieeal71#

使用python〉= 2.6,您可以执行以下操作:
对于Mac/Linux用户:

cat ugly.json | python -mjson.tool > pretty.json

对于Windows用户(感谢dnk.nitro的评论):

type ugly.json | python -mjson.tool > pretty.json
baubqpgj

baubqpgj2#

jq可以在几秒钟内格式化或美化约100MB的JSON文件:

jq '.' myLargeUnformattedFile.json > myLargeBeautifiedFile.json

上面的命令可以在10秒内美化一个单行的120MB文件,jq除了简单的格式化外,还提供了很多json操作功能,请参见their tutorials

syqv5f0l

syqv5f0l3#

jsonpps是唯一为我工作的(https://github.com/bazaarvoice/jsonpps)。

它不像jq、jsonpp和其他我尝试过的东西那样把所有东西都加载到RAM中。
关于安装和使用的一些有用提示:

下载网址:https://repo1.maven.org/maven2/com/bazaarvoice/jsonpps/jsonpps/1.1/jsonpps-1.1.jar
快捷方式(适用于Windows):

1.在同一目录中创建包含以下内容的文件jsonpps.cmd
@echo off java -Xms64m -Xmx64m -jar %~dp0\jsonpps-1.1.jar %*

快捷方式用法示例:

1.将标准输入格式化为标准输出:
echo { "x": 1 } | jsonpps
1.将标准输入格式化为文件
echo { "x": 1 } | jsonpps -o output.json
1.将文件格式设置为文件:
jsonpps input.json -o output.json

xoefb8l8

xoefb8l84#

背景--我试图用命令(Alt+Shift+F)在VS代码上格式化一个巨大的json文件~ 89 MB,但是通常情况下,它崩溃了。我用jq格式化我的文件并将其存储在另一个文件中。
下面显示了一个Windows 11用例。
步骤1-从官方网站下载jq,用于您各自的OS -https://stedolan.github.io/jq/
步骤2-在C盘中创建一个名为jq的文件夹,并将下载的可执行文件粘贴到该文件夹中。将该文件重命名为jq(错误1:请注意,默认情况下该文件是exe文件,因此不要将其另存为“jq.exe”,仅保存为“jq”)
步骤3-将路径变量设置为可执行文件的URL。
步骤4-打开你的cmd目录,在那里json文件被存储并且键入下面的命令- jq . currentfilename.json〉targetfilename.json
用你想要格式化的文件名替换currentfilename用你想要格式化数据的最终文件名替换targetfilename
几秒钟内你就可以在同一个目录中看到你的目标文件,它的格式化版本现在可以在VS代码或任何相关的编辑器上打开。2任何与jq作为命令的可识别性相关的错误都很有可能追溯到错误1。
jqjqueryjsondata-preprocessingdata-cleaning

kmynzznz

kmynzznz5#

您可以使用Notepad++(https://notepad-plus-plus.org/downloads/)格式化大型JSON文件(在Windows中测试)。
1.安装记事本++
1.进入插件-〉插件管理-〉安装'Json Viewer'插件。插件源代码在https://github.com/kapilratnani/JSON-Viewer
1.安装插件后,进入插件-〉JSON查看器-〉格式化JSON。
这将格式化JSON文件

相关问题