package com.example.gsonresolver;
import java.io.InputStream;
import java.util.List;
import com.example.gsonresolver.bean.Person;
import com.example.gsonresolver.bean.Person.HomeInfo;
import com.example.gsonresolver.bean.User;
import com.example.gsonresolver.utils.StreamTools;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//解析最外层是数组的情况
public void btnGsonResolver2(View v){
try{
InputStream is = getAssets().open("simple3.txt");
String json = StreamTools.readFromFile(is);
Gson gson = new Gson();
//返回形式 : 数组的形式 JavaBean的类名[].class 以数组的形式返回
// 集合的形式 new TypeToken<List<User>(){}.getType();
// User[] users = gson.fromJson(json, User[].class);
/* for (User user : users) {
System.out.println("数组 : "+user.toString());
}*/
//new TypeToken<List<User>>(){}.getType();
List<User> list = gson.fromJson(json, new TypeToken<List<User>>(){}.getType());
System.out.println("集合的形式 : "+list.toString());
}catch(Exception e){
e.printStackTrace();
}
}
public void btnGsonResolver(View v){
try {
InputStream is = getAssets().open("simple2.txt");
//json数据
String json = StreamTools.readFromFile(is);
//创建要给gson对象
Gson gson = new Gson();
//Json -> 对象
Person person = gson.fromJson(json, Person.class);
List<HomeInfo> info = person.getHomeinfo();
System.out.println("数据 : "+person.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}
import java.io.InputStream;
import java.util.List;
import com.example.gsonresolver.bean.Person;
import com.example.gsonresolver.bean.Person.HomeInfo;
import com.example.gsonresolver.bean.User;
import com.example.gsonresolver.utils.StreamTools;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//解析最外层是数组的情况
public void btnGsonResolver2(View v){
try{
InputStream is = getAssets().open("simple3.txt");
String json = StreamTools.readFromFile(is);
Gson gson = new Gson();
//返回形式 : 数组的形式 JavaBean的类名[].class 以数组的形式返回
// 集合的形式 new TypeToken<List<User>(){}.getType();
// User[] users = gson.fromJson(json, User[].class);
/* for (User user : users) {
System.out.println("数组 : "+user.toString());
}*/
//new TypeToken<List<User>>(){}.getType();
List<User> list = gson.fromJson(json, new TypeToken<List<User>>(){}.getType());
System.out.println("集合的形式 : "+list.toString());
}catch(Exception e){
e.printStackTrace();
}
}
public void btnGsonResolver(View v){
try {
InputStream is = getAssets().open("simple2.txt");
//json数据
String json = StreamTools.readFromFile(is);
//创建要给gson对象
Gson gson = new Gson();
//Json -> 对象
Person person = gson.fromJson(json, Person.class);
List<HomeInfo> info = person.getHomeinfo();
System.out.println("数据 : "+person.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}