2016-06-11 5 views
0

ich unter json bin Parsen und wollen Wert von EnterpriseFlag holenTyp Gussfehler beim json Antwort für int-Wert in Java-Parsing

"CardholderDetails": 
{ 
      "FirstName": "Manoj", 
      "LastName": "Pandy", 
      "ProfileImageUrl": "https://www.Mark.com/ImageLinkImages/MK0557/Pandey,Manoj_500617996.jpg", 
      "BuildingNumber": "MK0557", 
      "CardholderInstId": 0, 
      "EnterpriseFlag": 6 
} 

unten ist mein Code

int cardholderInstId = cardholderdetail.get("CardholderInstId");  
System.out.println(cardholderInstId); 

es Fehler Typenkonflikt zeigt : kann von Objekt konvertieren nicht

int cardholderInstId = (Integer) cardholderdetail.get("CardholderInstId"); 
System.out.println(cardholderInstId); 

wenn i t auf Integer, in int und es zeigt Option zu werfen werfen o Ganzzahl und gibt den Wert aus, es wird ein Fehler angezeigt. (Exception in thread "main" java.lang.ClassCastException: java.lang.Long kann nicht auf java.lang.Integer bei com.jason.example.JASONParser.ReadJSON.main gegossen werden)

Bitte helfen !!! Vielen Dank im Voraus ..

+0

Denken Sie darüber nach, was die Fehlermeldung Ihnen sagt. 'cardholderdetail.get (" CardholderInstId ")' gibt ein 'Long' zurück und Sie versuchen, das auf ein' Integer' zu beschränken. Tipp: Verwenden Sie 'long' anstelle von' int'. –

Antwort

0

Es sieht so aus, als ob der JSON-Parser, den Sie verwenden, CardholderInstId in eine Long anstatt einer Integer-Datei zerlegt.

Umwandeln in Long Verwenden Sie dann die intValue() Methode für dieses Objekt, um es als int zu erhalten.