我正在学习烤肉,但在尝试时遇到了一个问题。发现了很多类似的问题和更多的解决方案,但没有任何帮助
这是我的错
{
"firstName": "name",
"lastName": "last",
"resistances": {
"a1": 1,
"a2": 2,
"a3": 3,
"a4": 4
}
}
游戏者班
class Player implements Serializable{
String firstName;
String lastName;
int[] resistances;
public Player(String firstName, String lastName, int[] resistances) {
this.firstName = firstName;
this.lastName = lastName;
this.resistances = resistances;
}
}
以及我是如何尝试着
Gson gson = new Gson();
Player player = gson.fromJson("test.json", Player.class);
紧急求救信号
您的JSON“电阻”对象应该看起来像这样,以便您的解析代码能够工作:
{
"firstName": "name",
"lastName": "last",
"resistances": [
1, 2, 3, 4
]
}
或者,将Java中的电阻变量更改为映射。在这里寻找之前的答案——GSON可以将dictionary JSON对象解析为映射。
class Player implements Serializable {
String firstName;
String lastName;
Map<String, Integer> resistances;
public Player(String firstName, String lastName, Map<String, Integer> resistances) {
this.firstName = firstName;
this.lastName = lastName;
this.resistances = resistances;
}
}
fromJson(String,Class)解析字符串本身,在您的例子中是test。json,而不是它所代表的文件。您需要从试图解析的文件中创建一个读取器,并将其作为第一个参数传递。
如果test.json在外部存储:
String fpath = Environment.getExternalStorageDirectory() + "/path/to/test.json";
try {
FileReader fr = new FileReader(fpath));
gson.fromJson(fr, Player.class);
} catch (Exception e1) {
e1.printStackTrace();
}
我正在开发一个电子学习应用程序。但是我在从JsonObject解析时遇到了一个问题。你能给我一个简单易懂的方法来做这件事吗? {"状态":true,"类别": [ { "category_id":"1","category_name":"印度尼西亚语","category_detail":null,"category_thumbnail":"0" }, { "category_id":"2","c
我收到了firebase函数和dialogflow的响应,其中包含了我进一步实现所需的一些信息。响应是一个JSON,我将其保存在中,它是一个HashMap(字符串,对象)类型的变量。 我搜索过其他类似的线程,但奇怪的是,我的问题出现在第2列,而不是第1列,我在json中没有看到问题。这是gson部分。错误被抛出到带有属性的行上! 这是回应JSON:
问题内容: 我有这种方法: 我想解析一个JSON: 但是我收到一条错误消息: com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:预期为BEGIN_OBJECT,但位于第1行第1列 问题答案: 即使没有看到您的JSON字符串,您也可以从错误消息中得知,它不是要解析为类实例的正确结构。 Gson希望您的JSON字符串
我正在尝试运行此应用程序,但当我尝试登录时,我在“logcat”中看到此错误。消息“Success Login”表示它已被记录,并且有到数据库的连接,但我不知道在哪里等待对象,在哪里接收字符串。 10-11 14:54:10.481 2532-7430/com.alvardev.demos.limaculturalD/com.alvardev.demos.limacultural.http.Res
问题内容: 我想解析一个JSON: 但是我收到一条错误消息: ,但位于第1行第1列 问题答案: 即使没有看到你的JSON字符串,你也可以从错误消息中得知,它不是要解析为类实例的正确结构。 Gson希望你的JSON字符串以对象打开括号开头。例如 但是你传递给它的字符串以开引号开头
我正在尝试通过改造将字符串类型列表发送到mysql数据库。当我尝试使用postman时,我获得了成功,但我收到了来自android studio的错误消息。 我的API接口: 我的响应数据类: Php响应: Android Studio错误消息: OkHttp日志: 我认为问题出在我发布的列表中,因为如果我删除列表,结果是成功的。 怎么了?