我有一个JSON字符串,我想要反序列化为我创建的类,但我总是得到:
JsonSyntaxException:com.google.gson.stream.MalformedJsonException:使用JsonReader.setLenient(true)接受格式错误的JSON
我必须反序列化的JSON字符串是:
[{"UserId":"admin","Description":"Administrator","PIN":"00001"}]
所以我创建了一个像这样的用户类:
public class User {
@SerializedName("UserId")
private String userId;
@SerializedName("Description")
private String description;
@SerializedName("PIN")
private String pin;
public User(){
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
userId = userId;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
description = description;
}
public String getPIN() {
return pin;
}
public void setPIN(String PIN) {
this.pin = PIN;
}
}
在我打电话的活动中:
Gson gson = new Gson();
User[] users = gson.fromJson(server, User[].class); //server is the json string to de-serialize
我尝试使用在线工具从JSON字符串创建User的类结构或使用区分大小写的字符串的私有字符串来完成这些操作,但总是得到异常。
我甚至尝试过使用JsonReader但是在传递它作为gson.fromGson()
的参数时出错了