-2
我該如何分別將「id」和「name」的值分別存儲爲HashMap<Integer, String>
?Gson - 如何存儲屬性和值
目前,傾銷出pseudoStations
給我[{"id":0,"name":"London"}, {"id":1,"name":"Nottingham"}]
。遍歷遍歷只會給我一個JsonObject
爲每個列表元素。
主類
public static void main(String[] args) {
Gson gson = new Gson();
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader("stations.json"));
StationManager sm = gson.fromJson(br, StationManager.class);
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
if (br != null) {
closeBufferedReader(br);
}
}
}
站管理類
public class StationManager {
@SerializedName("pseudoStations")
@Expose
private List<JsonObject> pseudoStations = null;
public void setPseudoStations(List<JsonObject> pseudoStations) {
this.pseudoStations = pseudoStations;
}
}
stations.json
{
"pseudoStations":[
{
"id": 0,
"name": "London"
},
{
"id": 1,
"name": "Nottingham"
}
]
}
我不明白你爲什麼認爲你需要'HashMap <整數,字符串>'或者如何能夠存儲'id'和'name'鍵值對。使用與這些名稱相對應的兩個字段創建一個POJO。並且將你的'pseudoStations'改爲該POJO的'List'。 –
創建一個具有屬性name和id的Class Station並將Json映射到該類上爲Json中的每個工作站創建一個新的類的實例 – Mero