我有许多hashmap,它们已经被序列化并使用python转储到文本文件中。 我试图使用gson将这些数据反序列化为对象。在
序列化对于小文件(~MBs)很好,但对于千兆字节大小的文件则会出错。在
错误是:
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解析器,而不尝试一次解析所有内容。在
其中一个是杰克逊,它是Streaming API。在
相关问题 更多 >
编程相关推荐