为了账号安全,请及时绑定邮箱和手机立即绑定

读取带空格的字符串时获取com.google.gson.stream

读取带空格的字符串时获取com.google.gson.stream

慕码人2483693 2021-05-13 17:54:45
我正在使用Cloud Firestore存储数据。当我尝试读取字符串中带有空格的数据时,出现以下错误消息:    java.lang.reflect.InvocationTargetException    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)    at java.base/java.lang.reflect.Method.invoke(Method.java:564)    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:473)    at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:372)    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)    at java.base/java.lang.reflect.Method.invoke(Method.java:564)    at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:941)Caused by: com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated object at line 1 column 79    at com.google.gson.Gson.fromJson(Gson.java:769)    at POS.Firebase.readCounts(Firebase.java:47)    at POS.Main.main(Main.java:52)    ... 11 moreCaused by: com.google.gson.stream.MalformedJsonException: Unterminated object at line 1 column 79    at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1298)    at com.google.gson.stream.JsonReader.nextInObject(JsonReader.java:722)    at com.google.gson.stream.JsonReader.peek(JsonReader.java:382)    at com.google.gson.stream.JsonReader.hasNext(JsonReader.java:349)    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:169)    at com.google.gson.Gson.fromJson(Gson.java:755)当我在数据库中输入数据时,有没有一种方法可以在不添加引号的情况下存储数据
查看完整描述

2 回答

?
慕雪6442864

TA贡献1812条经验 获得超5个赞

documentSnapshot.getData()的返回类型为Map。要将Map转换为json对象,只需将值传递给JSONObect构造函数,如下所示

 JSONObject jsonObject = new JSONObject(map);

现在您将要面对的问题是Map的键是字符串,但值是Object,它将在您的JSONObject中打印一些随机值。

因此,最好的方法是迭代地图,获取值并从中创建对象。


查看完整回答
反对 回复 2021-05-26
  • 2 回答
  • 0 关注
  • 281 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信