最近碰到了解析json对象中的key是中文的json数据,学了下gson的用法。
gson包2.3.1版下载地址:http://download.csdn.net/detail/u012975705/9142787
源码
Info类
package com.practice.noyet.gsontest;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.annotations.SerializedName;
import java.util.List;
/**
* Created by noyet on 2015/9/27.
*/
public class Info implements Parcelable {
@SerializedName("Data")
private List<CompanyInfo> list;
public Info() {
}
private Info(Parcel parcel) {
parcel.readTypedList(list, CompanyInfo.CREATOR);
}
@Override
public String toString() {
return "Info{" +
"list=" + list +
'}';
}
public List<CompanyInfo> getList() {
return list;
}
public void setList(List<CompanyInfo> list) {
this.list = list;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeTypedList(list);
}
public final static Creator<Info> CREATOR = new Creator<Info>() {
@Override
public Info createFromParcel(Parcel parcel) {
return new Info(parcel);
}
@Override
public Info[] newArray(int i) {
return new Info[i];
}
};
}
CompanyInfo类
package com.practice.noyet.gsontest;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.annotations.SerializedName;
/**
* Created by noyet on 2015/9/27.
*/
public class CompanyInfo implements Parcelable {
//名字
private String CompanyName;
//ID
private int CompanyId;
//花费
private String CostTitle;
//年
private int Year;
//月
private int Month;
@SerializedName("CoseItem")
private CoseItemEntity coseItemEntity;
public CompanyInfo() {
}
private CompanyInfo(Parcel parcel) {
CompanyName = parcel.readString();
CompanyId = parcel.readInt();
CostTitle = parcel.readString();
Year = parcel.readInt();
Month = parcel.readInt();
coseItemEntity = parcel.readParcelable(CoseItemEntity.class.getClassLoader());
}
@Override
public String toString() {
return "CompanyInfo{" +
"CompanyName='" + CompanyName + '\'' +
", CompanyId=" + CompanyId +
", CostTitle='" + CostTitle + '\'' +
", Year=" + Year +
", Month=" + Month +
", list=" + coseItemEntity +
'}';
}
public String getCompanyName() {
return CompanyName;
}
public void setCompanyName(String companyName) {
CompanyName = companyName;
}
public int getCompanyId() {
return CompanyId;
}
public void setCompanyId(int companyId) {
CompanyId = companyId;
}
public String getCostTitle() {
return CostTitle;
}
public void setCostTitle(String costTitle) {
CostTitle = costTitle;
}
public int getYear() {
return Year;
}
public void setYear(int year) {
Year = year;
}
public int getMonth() {
return Month;
}
public void setMonth(int month) {
Month = month;
}
public CoseItemEntity getCoseItemEntity() {
return coseItemEntity;
}
public void setCoseItemEntity(CoseItemEntity coseItemEntity) {
this.coseItemEntity = coseItemEntity;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeString(CompanyName);
parcel.writeInt(CompanyId);
parcel.writeString(CostTitle);
parcel.writeInt(Year);
parcel.writeInt(Month);
p