android JSON转换
我用这段代码将android中的一个对象转换为JSONobjectandroid JSON转换,android,arrays,json,Android,Arrays,Json,我用这段代码将android中的一个对象转换为JSONobject public JSONObject toJSONMessage() { JSONObject object = new JSONObject(); try { object.putOpt(Artifact.JSON_IDAR, this.idAr); object.putOpt(Artifact.JSON_CREATOR, this.creator); object
public JSONObject toJSONMessage() {
JSONObject object = new JSONObject();
try {
object.putOpt(Artifact.JSON_IDAR, this.idAr);
object.putOpt(Artifact.JSON_CREATOR, this.creator);
object.putOpt(Artifact.JSON_PROPRIETAIRE, this.proprietaire);
object.putOpt(Artifact.JSON_TYPEARTEFACT, this.type);
object.putOpt(Artifact.JSON_IDCONTENEUR, this.idConteneur);
object.putOpt(Artifact.JSON_TYPECONTENEUR, this.typeConteneur);
object.putOpt(Artifact.JSON_DATECREATION, this.dateCreation);
object.putOpt(Artifact.JSON_DATEDERNIEREMODIFICATION, this.dateDerniereModification);
JSONArray jsonArr = new JSONArray();
for (Modificateurs mod : this.getModificateurs()) {
JSONObject pnObj = new JSONObject();
pnObj.put(Artifact.JSON_MODIFICATEUR, mod.getModificateur());
pnObj.put(Artifact.JSON_DATEMODIFICATION, mod.getDateModification());
jsonArr.put(pnObj);
}
object.putOpt(Artifact.JSON_MODIFICATEURS, jsonArr);
object.putOpt(Artifact.JSON_TITLE, this.title);
object.putOpt(Artifact.JSON_CONTENU, this.contenu);
} catch (JSONException e) {
e.printStackTrace();
}
return object;
}
之后,我创建这个函数来转换这个JSON
public Artifact(JSONObject object) {
List<Modificateurs> mods = null;
try {
this.idAr = object.getString(Artifact.JSON_IDAR);
this.creator = object.getString(Artifact.JSON_CREATOR);
this.proprietaire = object.getString(Artifact.JSON_PROPRIETAIRE);
this.type = object.getString(Artifact.JSON_TYPEARTEFACT);
this.idConteneur = object.getString(Artifact.JSON_IDCONTENEUR);
this.typeConteneur = object.getString(Artifact.JSON_TYPECONTENEUR);
this.dateCreation = object.getString(Artifact.JSON_DATECREATION);
this.contenu = object.getString(Artifact.JSON_CONTENU);
this.title = object.getString(Artifact.JSON_TITLE);
this.dateDerniereModification = object.getString(Artifact.JSON_DATEDERNIEREMODIFICATION);
JSONArray jsonArr = object.getJSONArray(Artifact.JSON_MODIFICATEURS);
for (int i = 0; i < jsonArr.length(); i++) {
JSONObject objet = jsonArr.getJSONObject(i);
String modificateur = objet.optString(Artifact.JSON_MODIFICATEUR);
String date = objet.optString(Artifact.JSON_DATEMODIFICATION);
Modificateurs mod = new Modificateurs(modificateur, date);
mods.add(mod);
}
this.modificateurs=mods;
} catch (JSONException e) {
e.printStackTrace();
}
}
公共工件(JSONObject对象){
列表mods=null;
试一试{
this.idAr=object.getString(Artifact.JSON_-idAr);
this.creator=object.getString(Artifact.JSON\u creator);
this.proprietaire=object.getString(Artifact.JSON_proprietaire);
this.type=object.getString(Artifact.JSON\u typeartifact);
this.idConteneur=object.getString(Artifact.JSON_idConteneur);
this.typeConteneur=object.getString(Artifact.JSON\u typeConteneur);
this.dateCreation=object.getString(Artifact.JSON\u dateCreation);
this.contenu=object.getString(Artifact.JSON\u contenu);
this.title=object.getString(Artifact.JSON\u title);
this.dateDerniereModification=object.getString(Artifact.JSON_dateDerniereModification);
JSONArray jsonArr=object.getJSONArray(Artifact.JSON_modificaters);
for(int i=0;i
但是我不能得到修改器(修改器)。当我想用日志显示修改器时,应用程序崩溃了。
谁能帮帮我 确定在其中添加
mod
之前初始化mod
阵列列表的位置?列表mods=null;在构造函数中,在添加mod
之前初始化mod
数组列表?List mods=null;在构造函数中