Android EditText:如何删除;空";从Json获取的字符串
是否有任何方法可以消除JSONObject响应中的编辑文本的“null”字符串?然后只显示空文本 他是用下面的方法做的Android EditText:如何删除;空";从Json获取的字符串,android,json,android-edittext,Android,Json,Android Edittext,是否有任何方法可以消除JSONObject响应中的编辑文本的“null”字符串?然后只显示空文本 他是用下面的方法做的 if (jsonResponse.getString(DataManager.Name).equals("null"){ edtName.setText(""); }else{ edtName.setText(jsonResponse.getString(usersDataInfo.getNombre())); } 但当字段包含信息时,它会再次输入指令并
if (jsonResponse.getString(DataManager.Name).equals("null"){
edtName.setText("");
}else{
edtName.setText(jsonResponse.getString(usersDataInfo.getNombre()));
}
但当字段包含信息时,它会再次输入指令并删除信息
JSON
使用isNull()方法检查null值
i、 e:
或者,如果您返回了一些内容,只需:
jsonResponse.isNull("CELULAR") ? (return someting) : (return another thing)
使用isNull()方法检查null值
i、 e:
或者,如果您返回了一些内容,只需:
jsonResponse.isNull("CELULAR") ? (return someting) : (return another thing)
我已经创建了一个示例,对于我来说,它正在工作,请看:
public class MainActivity extends AppCompatActivity {
private EditText etEjemplo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etEjemplo = findViewById(R.id.etEjemplo);
String json = "{\n" +
"\t\"ID\": 23,\n" +
"\t\"NOMBRE\": null,\n" +
"\t\"APELLIDOPATERNO\": null,\n" +
"\t\"APELLIDOMATERNO\": null,\n" +
"\t\"TELEFONO\": null,\n" +
"\t\"CELULAR\": null,\n" +
"\t\"NACIMIENTO\": null,\n" +
"\t\"SEXO\": null,\n" +
"\t\"USUARIOID\": 7\n" +
"}";
try {
JSONObject jObj = new JSONObject(json);
String nombre = jObj.getString("NOMBRE");
//You can use jObj.isNull("NOMBRE") instead
if(nombre.equals("null")){
etEjemplo.setText("");
}
else{
etEjemplo.setText(nombre);
}
//One line case
//etEjemplo.setText(nombre.equals("null") ? "" : nombre);
//or
//etEjemplo.setText(jObj.isNull("NOMBRE") ? "" : nombre);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
我已经创建了一个示例,对于我来说,它正在工作,请看:
public class MainActivity extends AppCompatActivity {
private EditText etEjemplo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etEjemplo = findViewById(R.id.etEjemplo);
String json = "{\n" +
"\t\"ID\": 23,\n" +
"\t\"NOMBRE\": null,\n" +
"\t\"APELLIDOPATERNO\": null,\n" +
"\t\"APELLIDOMATERNO\": null,\n" +
"\t\"TELEFONO\": null,\n" +
"\t\"CELULAR\": null,\n" +
"\t\"NACIMIENTO\": null,\n" +
"\t\"SEXO\": null,\n" +
"\t\"USUARIOID\": 7\n" +
"}";
try {
JSONObject jObj = new JSONObject(json);
String nombre = jObj.getString("NOMBRE");
//You can use jObj.isNull("NOMBRE") instead
if(nombre.equals("null")){
etEjemplo.setText("");
}
else{
etEjemplo.setText(nombre);
}
//One line case
//etEjemplo.setText(nombre.equals("null") ? "" : nombre);
//or
//etEjemplo.setText(jObj.isNull("NOMBRE") ? "" : nombre);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
你能发布一个Json的例子吗?
{“ID”:23,“NOMBRE”:null,“APELLIDOPATERNO”:null,“APELLIDOMATERNO”:null,“TELEFONO”:null,“CELULAR”:null,“NACIMIENTO”:null,“SEXO”:null,“USUARIOID”:7}
我添加了一个答案:)我建议在json和对象之间使用Gson或类似的工具进行解析。然后,您可以对对象执行空检查。您可以发布一个Json示例吗?{“ID”:23,“NOMBRE”:null,“APELLIDOPATERNO”:null,“APELLIDOMATERNO”:null,“TELEFONO”:null,“CELULAR”:null,“NACIMIENTO”:null,“SEXO”:null,“USUARIOID”:7}
我添加了一个答案:)我建议在json和对象之间使用Gson或类似的工具进行解析。然后可以对对象执行空检查。