2016-07-29 17 views
0

Ich versuche, parse eine JSON Datei auf Java mit GSON und ich habe ProblemParsing JSON-Datei in Java mit Gson

Gson gson = new GsonBuilder().create(); 
Person p1 = gson.fromJson(new FileReader("/Users/blabla/Desktop/person.json"), Person.class); 
System.out.println(p1); 

Dies ist meine Klasse Person

public class Person { 
    private String name; 
    private int age; 
    private List<String> Friends; 

    //Getters and setters 

Diese meine JSON-Datei ist

{ 
    "Name":"TEXT", 
    "Weight":95, 
    "Height":1.87, 
    "Friends":[ 
    "FRIEND1", 
    "FRIEND2", 
    "FRIEND3" 
    ] 
} 

Der Ausgang ist [email protected]

Was mache ich falsch?

+1

Können Sie Ihre Ausnahme hinzufügen, erhalten Sie –

+0

ich keine Ausnahme, sondern die Ausgabe ist falsch Person @ 52b2a2d8 nicht ausgegeben werden sollte, ist. JSON-Dateidaten? –

+0

Wenn Sie die Ausgabe oder Fehler oder Ausnahme nicht setzen, können wir keine gute Antwort geben. –

Antwort

2

Namensgebung Dinge .... müssen Sie sicherstellen, dass JSON keys Ihrer Klasse identisch sind attributes (Groß-/Kleinschreibung) etc ...

entweder ändern Sie Ihre JSON zu

{ "name":"TEXT", "Weight":95, "Height":1.87, "Friends": [ "fRIEND1", "FRIEND2", "FRIEND3" ] } 

oder ändern Sie Ihre Person class Attribute

private String Name; 
private int age; 
private List<String>Friends; 

zusätzlich Sie Override toString Methode in yo müssen ur Person class um nett zu werden Drucken

z.B.

fügen Sie diese zu Ihrer Person Klasse:

@Override 
    public String toString() { 

     return (name + " : " + age + " : " + Friends); 
    } 
1

Wenn Person-Klasse wird nicht wie toString Methode als natürlich Folge haben this.you toString() für das außer Kraft setzen müssen.

Sie können über toString sehen() hier How to use the toString method in Java?

0

1) Ihre Attributnamen sollten mit den JSON Werte

2) Rechtsklick in Eclipse und erzeugen toString() Methode entsprechen.

Ex: Person Klasse sollte

public class Person { 
    String name; 
    int age; 
    List<String> friends 

    //Getters and setters 
}