在以往項目中比較常用的無非就是解析Json或者生成Json
首先咱們先使用類庫
implementation 'com.google.code.gson:gson:2.8.5' 注:本人Android studio版本比較高
實例解析篇:
//然後生成POJO類 //我暫時命名爲ObjectInfo ,注:需要養成習慣添加比較註解 以下是類代碼
public class ObjectInfo {
//頭像
private String img;
//年齡
private String age;
//性別#0:男1:女
private String sex;
//是否已婚#0:未婚1:已婚
private String isMarried;
//積分
private String integral;
//餘額
private String balance;
public String getImg() {
return img;
}
public void setImg(String img) {
this.img = img;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getIsMarried() {
return isMarried;
}
public void setIsMarried(String isMarried) {
this.isMarried = isMarried;
}
public String getIntegral() {
return integral;
}
public void setIntegral(String integral) {
this.integral = integral;
}
public String getBalance() {
return balance;
}
public void setBalance(String balance) {
this.balance = balance;
}
}
//現在我們解析開始,以下是formJson全部代碼
/***
* Gson解析Demo使用
*/
public class FormGsonActivity extends BaseActivity implements View.OnClickListener {
private String jsonStr = "{\n" +
"\"img\": \"http://image.biaobaiju.com/uploads/20180802/03/1533152912-BmPIzdDxuT.jpg\",\n" +
"\"age\": 26,\n" +
"\"sex\": 1,\n" +
"\"isMarried\": 0,\n" +
"\"integral\": 6088,\n" +
"\"balance\": 16.88\n" +
"}";
//返回鍵空間
private ImageView backIv;
//標題控件
private TextView titleTv;
//打印信息顯示控件
private TextView printTv;
@Override
public int initLayout() {
return R.layout.activity_gson;
}
@Override
public void initView() {
backIv = findViewById(R.id.include_back_iv);
titleTv = findViewById(R.id.include_title_tv);
printTv = findViewById(R.id.gson_print_tv);
}
@Override
public void initData() {
titleTv.setText("Json解析");
ObjectInfo info = formJson(jsonStr);
printTv.setText("頭像地址:"+info.getImg() + "\n年齡:" + info.getAge() + "\n性別:" + info.getSex() + "\n是否已婚:" + info.getIsMarried() + "\n積分:" + info.getIntegral() + "\n餘額:" + info.getBalance());
backIv.setOnClickListener(this);
}
private ObjectInfo formJson(String jsonOne) {
//解析json數據生成ObjectInfo
ObjectInfo objectInfo = new Gson().fromJson(jsonOne, ObjectInfo.class);
return objectInfo;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.include_back_iv:
finish();
break;
}
}
}
//以下實際運行後效果圖
以上經驗來自一位自學只有中專學歷的老菜鳥~