我正在尝试创建以下代码的JSONObject。但是Android Studio表示它为null。我的错误在哪里?
我尝试了两种不同的创建方式。
第一
String JSONString = "{" +
" \"retorno\": {" +
" \"empresas\": [" +
" {" +
" \"cnpj\": \"05.743.645/0001-38\"," +
" \"razao_social\": \"GISELA TRANSPORTES E DISTRIBUIDORA DE FLORES LTDA - ME\"," +
" \"endereco\": \"EST RSC-453 (ROTA DO SOL) KM 93,8\"," +
" \"bairro\": \"BAIRRO ALFANDEGA\"," +
" \"numero\": 26," +
" \"complemento\": \"\"," +
" \"telefone\": \"3462 2749\"," +
" \"celular\": \"\"," +
" \"email\": \"giselaflores@giselaflores.com.br\"" +
" }" +
" ]" +
" }" +
"}";
try {
JSONObject jsonEmpresa = new JSONObject(JSONString);
String email = jsonEmpresa.getString("email");
} catch (JSONException e) {
e.printStackTrace();
}
第二
try {
JSONObject jsonEmpresa = new JSONObject();
jsonEmpresa.put("cnpj", "05.743.645/0001-38");
jsonEmpresa.put("razao_social", "GISELA TRANSPORTES E DISTRIBUIDORA DE FLORES LTDA - ME");
jsonEmpresa.put("endereco", "EST RSC-453 (ROTA DO SOL) KM 93,8");
jsonEmpresa.put("bairro", "BAIRRO ALFANDEGA");
jsonEmpresa.put("numero", 26);
jsonEmpresa.put("complemento", "");
jsonEmpresa.put("telefone", "3462 2749");
jsonEmpresa.put("celular", "");
jsonEmpresa.put("email", "giselaflores@giselaflores.com.br");
String email = jsonEmpresa.getString("email");
} catch (JSONException e) {
e.printStackTrace();
}
字符串电子邮件的值为 null ,应为 giselaflores@giselaflores.com.br 。
当我尝试调试时,收到消息 jsonEmpresa:“空” 。
答案 0 :(得分:1)
要获取给定示例的电子邮件价值,您应该喜欢
String JSONString = "{" +
" \"retorno\": {" +
" \"empresas\": [" +
" {" +
" \"cnpj\": \"05.743.645/0001-38\"," +
" \"razao_social\": \"GISELA TRANSPORTES E DISTRIBUIDORA DE FLORES LTDA - ME\"," +
" \"endereco\": \"EST RSC-453 (ROTA DO SOL) KM 93,8\"," +
" \"bairro\": \"BAIRRO ALFANDEGA\"," +
" \"numero\": 26," +
" \"complemento\": \"\"," +
" \"telefone\": \"3462 2749\"," +
" \"celular\": \"\"," +
" \"email\": \"giselaflores@giselaflores.com.br\"" +
" }" +
" ]" +
" }" +
"}";
try {
JSONObject jsonEmpresa = new JSONObject(JSONString);
JSONObject retorno = jsonEmpresa.getJSONObject("retorno");
JSONArray empresas = retorno.getJSONArray("empresas");
JSONObject empresa = empresas.getJSONObject(0);
String email =empresa.getString("email");
} catch (JSONException e) {
e.printStackTrace();
}