- 使用到的類 Gson
- 在Android Studio中搜索Gson library dependcies 只能使用小寫,gson;否則會搜不到;
- JsonReader是使用google的JsonReader,在導入Gson library的時候,已經導入了;
- json文件上的字段,應與你建立的數據庫表字段保持一致,否則會出錯
-
public class Student { @PrimaryKey @NonNull @ColumnInfo(name = "stu_id") private long stu_id; @NonNull @ColumnInfo(name = "name") private String name; //身份證 @ColumnInfo(name = "ID") private String ID; //性別 0-男 1-女 @ColumnInfo(name = "sex") private int sex; }
- json文件
[ { "stu_id":1000, "ID": "410923198910162546", "name": "張三", "sex":1 }, { "stu_id":1001, "ID": "410923198910162545", "name": "李四", "sex":2 } ]
json文件的字段一定有和Enity一樣,否則會報莫名其妙的錯誤。
-
是因為最后一個字段寫錯了
-
-
- 使用Type 、TypeToken
- 整體代碼
InputStream inputStream = getApplicationContext().getAssets().open("students_file.json"); InputStreamReader inputStreamReader = new InputStreamReader(inputStream); JsonReader jsonReader = new JsonReader(inputStreamReader); Gson gson = new Gson(); Type type = new TypeToken<List<Student>>(){}.getType(); List<Student> mstus=gson.fromJson(jsonReader, type);