先贴代码再解释问题,Json数据如下:
[
{"musicName":"nuoya.mp3"},
{"musicName":"john.mp3"}
]
实体类的代码如下:
package com.example.jsonparsetest;
import java.util.ArrayList;
import java.util.List;
public class Resource{
private String musicName;
public String getMusicName() {
return musicName;
}
public void setMusicName(String musicName) {
this.musicName = musicName;
}
}
解析方法的代码如下:
package com.example.jsonparsetest;
import java.lang.reflect.Type;
import java.util.Iterator;
import java.util.LinkedList;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
public class JsonUtils {
public void parseMusicFromJson(String jsonData){
Type listType = new TypeToken>(){}.getType();
Gson gson = new Gson();
LinkedList resources = gson.fromJson(jsonData, listType);
for (Iterator iterator = resources.iterator(); iterator.hasNext();) {
Resource resource = (Resource) iterator.next();
System.out.println("musicName-->"+resource.getMusicName());
}
}
}
代码贴完了,对于这种直接一个数组的Json数据是能正常解析的,但是假如在数组前添加了头就解析不了了,例如这样:
{"Music":[
{"musicName":"nuoya.mp3"},
{"musicName":"john.mp3"}
]}
想问一下实体类和解析方法的代码怎么改?最好能给个小demo,原因是代码量确实不多,小弟刚开始学,希望各位能不吝赐教!