gpt4 book ai didi

java - 使用 gson 在 Java 中序列化千兆字节的 python 对象

转载 作者:太空宇宙 更新时间:2023-11-04 14:20:38 26 4
gpt4 key购买 nike

我有许多 HashMap ,它们已使用 python 序列化并转储到文本文件中。我正在尝试使用 gson 将此数据反序列化为对象。

序列化对于小文件(~MB)工作正常,但对于千兆字节大小的文件会出现错误。

错误是:

Exception in thread "main" com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 1230 path $.
at com.google.gson.Gson.fromJson(Gson.java:825)
at ReadFromJson.main(ReadFromJson.java:47)
Caused by: com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 1230 path $.
at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1573)
at com.google.gson.stream.JsonReader.nextQuotedValue(JsonReader.java:1031)
at com.google.gson.stream.JsonReader.nextString(JsonReader.java:827)
at com.google.gson.internal.bind.TypeAdapters$13.read(TypeAdapters.java:358)
at com.google.gson.internal.bind.TypeAdapters$13.read(TypeAdapters.java:346)
at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:40)
at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
at com.google.gson.Gson.fromJson(Gson.java:810)

最佳答案

您可能会遇到一些限制,这是由于 Gson 尝试将整个 JSON 结构加载到内存中的结果。您应该考虑使用支持流式传输数据的 JSON 解析器,而无需尝试立即解析所有内容。

jackson 就是其中之一,它是 Streaming API .

关于java - 使用 gson 在 Java 中序列化千兆字节的 python 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27231518/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com