2012-12-28 10 views

risposta

23

Supponendo che object è di tipo JSONObject è possibile utilizzare

object.optInt(Constants.FirmID) 

o

object.optInt(Constants.FirmID, defaultValue) 
+0

Ok, grazie Henry. Sto provando. – mertaydin

+0

Grazie fratello. Ho risolto il problema con la tua risposta. – mertaydin

1

È possibile verificare se l'oggetto che ricevete è un instanceof JSONObject prima di provare a getInt(). Inoltre, è necessario verificare se null prima di passare come param al numero getInt(). Come sotto

if(Constants.FirmID != null){ 
firmInfo.setFirmID(object.getInt(Integer.parseInt(Constants.FirmID))); 
} 

check this collegamento

+0

No no no, Constants.FirmID non è già nullo. getInt (Constants.FirmID) sta ottenendo valore da Jsononject e la variabile è FirmID. { FirmID: null } come questo. – mertaydin

+0

ooh ok, quindi l'oggetto JSON per FirmID è nullo?, In tal caso non è possibile ottenereInt di null. È un problema/bug lato server. Se pensi che l'oggetto firmid debba contenere interi, correggi il server per inviarti 0 invece di null? –

+0

Ho risolto il problema con la risposta di @Henry. Grazie anche a lei. – mertaydin

-1

getint dà messaggio di errore se non esiste una chiave per JSONObject o il vostro errore durante l'impostazione a firmInfo

verifica se l'ID è presente o non si usa

object.has("Constants.FirmID") 

se ha la chiave, verificare se è null o non

if(String.valueOf(jArray.getInt("sdfgh")) != null) 
{ 
    // add your code here . . . . . 
} 

o

if(String.valueOf(jArray.getInt("sdfgh")).length < 1) 
    { 
     // add your code here . . . . . 
    } 
+0

Grazie per la risposta, fratello. Ho risolto il mio problema. – mertaydin

Problemi correlati