以下是崩溃我的Julia内核。有没有更好的方法来读取和解析一个大的(> 400 MB)JSON文件?
using JSON
data = JSON.parsefile("file.json")
答案 0 :(得分:2)
除非投入一些精力来制作更智能的JSON解析器,否则以下内容可能会有效:file.json
有很多行。在这种情况下,读取文件并逐行解析一个大的重复JSON部分或逐个chunk解析(对于正确的块长度)可以解决问题。对此进行编码的可能方法是:
using JSON
f = open("file.json","r")
discard_lines = 12 # lines up to repetitive part
important_chunks = 1000 # number of data items
chunk_length = 2 # each data item has a 2-line JSON chunk
for i=1:discard_lines
l = readline(f)
end
for i=1:important_chunks
chunk = join([readline(f) for j=1:chunk_length])
push!(thedata,JSON.parse(chunk))
end
close(f)
# use thedata
这很有可能成为您问题的临时权宜之计。检查file.json
以找出答案。