Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编辑一个大的JSON文件 如何手动编辑大型JSON?_Json_Large Files - Fatal编程技术网

编辑一个大的JSON文件 如何手动编辑大型JSON?

编辑一个大的JSON文件 如何手动编辑大型JSON?,json,large-files,Json,Large Files,我有一个大的JSON文件,大约100MB。我想手动检查一些属性,然后向一些对象添加更多属性 我将从查看文件的子集开始。比如说,前100个对象。我会逐渐扩大规模,然后看看可能有250个,然后是1000个,等等 有人能推荐一种语言或软件(我正在运行Windows)来完成这项任务吗 以前的一些建议不起作用或不起作用。 升华-无法加载该文件。永远的加载条。我不得不杀人 记事本++-无法加载。冻结。我不得不杀人 任何在线信息-数据都是保密的 更多Python和Jupyter信息。 导致错误。我想这和J

我有一个大的JSON文件,大约100MB。我想手动检查一些属性,然后向一些对象添加更多属性

我将从查看文件的子集开始。比如说,前100个对象。我会逐渐扩大规模,然后看看可能有250个,然后是1000个,等等

有人能推荐一种语言或软件(我正在运行Windows)来完成这项任务吗

以前的一些建议不起作用或不起作用。
  • 升华-无法加载该文件。永远的加载条。我不得不杀人
  • 记事本++-无法加载。冻结。我不得不杀人
  • 任何在线信息-数据都是保密的
更多Python和Jupyter信息。 导致错误。我想这和Jupyter有关,但我不确定

IOPub data rate exceeded.
The notebook server will temporarily stop sending output
to the client in order to avoid crashing it.
To change this limit, set the config variable
`--NotebookApp.iopub_data_rate_limit`.

Current values:
NotebookApp.iopub_data_rate_limit=1000000.0 (bytes/sec)
NotebookApp.rate_limit_window=3.0 (secs)
这让我怀疑这样做是否愚蠢

可能的解决方案
对于编辑器,请尝试记事本++ 对于语言,请尝试Python
由于您还没有给出数据结构,我无法给出更多的答案。

您可以做的是编写一个简单的GUI程序。使用TKinter创建一个窗口和其中的一个文本区域,以显示json、一个要输入的文本框、要查看的对象数量,以及一个名为
Next
或“下一步要查看的内容”的按钮和一个要保存的按钮。以下是每个项目的功能

首先,您将阅读python中完整的json,并将其作为一个dict。

下一步按钮-这将根据文本框中的值不断迭代。您可以编写一个自定义生成器,它将根据所需值的数量进行生成。

保存按钮-:这将继续将当前json保存为新json,或者如果可以,您可以尝试编写一个函数来直接更新当前json


文本区域-您应该获取字典并转换为json,并显示下一个按钮生成器的输出

这不是最好的答案,但阅读JSON的问题似乎仅限于Jupyter笔记本电脑(甚至是我笔记本电脑的局限性)

在Spyder中工作或从命令行运行可以避免原始问题中提到的Jupyter错误

如果有人知道如何调整Jupyter来避免这个问题,那就太好了(对不起,我还不知道怎么做)。

如果您正在使用linux(或者有机会将文件传输到*nix),您可能希望通过

wc -l myfile.json
假设,为了简单起见,您的文件有2530000行,并且您希望将其拆分为每行100k行,那么您可以利用发行版中提供的任何命令将文件进一步拆分为所需的块,然后逐个进行编辑

如果您对“linux方式”感到满意,请查看关于其他主题的一些提示,例如。


我希望有帮助

记事本++在我试图打开它时冻结。JSON中的属性结构不好。它们因对象而异。但它仍然只是一个JSON。用示例数据发布数据结构怎么样?这都是机密数据。我无法发布JSON的任何内容。我也很难理解物体的结构,因为1)它们并不完全相同,2)我还没有找到一个好的方法来观察它。如果您有一些我可以尝试的快速示例代码,那就太好了。好的,您需要在最后正确地“合并”已编辑的json文件块,以实现所需的更改。如果您问这个问题是因为在最后编辑并尝试合并文件时,由于不可预测(或硬件)问题而产生的假定问题,如果完整性对您来说至关重要,您可能希望让数据库服务器参与进来。也就是说,在本地mysql服务器中创建一个表来存储数据,然后将数据源(或加载数据)填充到该表中,并相应地进行更改。
wc -l myfile.json