Search code examples
javaandroidjsongso

How to parse with GSON when identifier has space in name


How to parse with GSON when file looks like this

{
    "Person Id":"test",
    "Last Name": "test",
    "First Name":"test"
}

I know to parse when names doesn't have space between, I create class like

class Person{
public String PersonId;
public String LastName;
public String FirstName;
}

but how to parse when identifier has space inside ? What to change in Person class ? ( I cannot change format of file ).


Solution

  • I have tried to parse this JSON but I didn't use GSON to parse this. I'll share my code with you, kindly consider only as a supplementary solution to solve the issue:

    String parse = "{\"Person Id\":\"test\",\"Last Name\": \"lname\",\"First Name\":\"fname\"}";
    try {
        JSONObject jsonObject   =   new JSONObject(parse);
        String id = jsonObject.getString("Person Id");
        System.out.println("id="+id);
        System.out.println("lname="+jsonObject.getString("Last Name"));
        System.out.println("fname="+jsonObject.getString("First Name"));
    } catch (JSONException e) {
        e.printStackTrace();
    }