我有一個問題,閱讀JSON並將其轉換爲矢量對象,奇怪的部分是這個問題只發生在Android 4.4.2設備上,並在仿真器上工作。如何將json轉換爲Vector? ClassCastException gson Android 4.4.2
這裏是我的代碼:
JsonReader reader = new JsonReader(new StringReader(string));
AllConversationsObject allConversationsObject = gson.fromJson(reader,AllConversationsObject.class);
allConversationObject.conversations.get(0)
這裏是AllConversationsObject:
public class AllConversationsObject {
Vector<Conversation> conversations;
String bookmark;
public Vector<Conversation> getConversations() {
return conversations;
}
public void setConversations(Vector<Conversation> conversations) {
this.conversations = conversations;
}
public String getBookmark() {
return bookmark;
}
public void setBookmark(String bookmark) {
this.bookmark = bookmark;
}
}
上conversations.get(0)
應用程序崩潰與此錯誤:
Fatal Exception: java.lang.ClassCastException: com.google.gson.internal.LinkedTreeMap cannot be cast to com.myapp.com.Conversation
這裏的build.gradle:
compile 'com.google.code.gson:gson:2.3'
這裏是JSON:
{
"bookmark": "string",
"conversations": [
{},
{}
]
}
什麼問題?謝謝
陣列沒有樣品JSON是不可能的回答......也就是爲什麼矢量ArrayList不是? – Selvin
@Selvin謝謝,我可以使用ArrayList,但Vector有問題嗎?我將添加json,但我100%確定Json沒有問題,因爲它在其他版本上工作 – david
什麼是您的**讀者**?你是一個字符串,你是如何創建它的? –