2014-04-01 48 views
0

進出口使用GSON爲desserialize這個對象:GSON錯誤期望的字符串,但被發現對象

[ 

     { 
      "_id": "53357a63138c2564feaf187f", 
      "worktypes": [ 
       { 
        "name": "Tipo uno" 
       }, 
       { 
        "name": "Tipo dos" 
       }, 
       { 
        "name": "dasdasd" 
       } 
      ], 
      "company": "aa" 
     }, 
     { 
      "_id": "5335d03deffb9c0000b44304", 
      "company": "asasdasd" 
     }, 
     { 
      "_id": "5339ba03ef04d1c5882f7aa2", 
      "company": "Nueva" 
     }, 
     { 
      "_id": "5339c150ef04d1c5882f7aa3", 
      "company": "Nueva" 
     }, 
     { 
      "_id": "5339c4f1ef04d1c5882f7aa4", 
      "company": "Otra mas" 
     }, 
     { 
      "_id": "53340d07d6429d27e1284c77", 
      "worktypes": [ 
       { 
        "name": "Pompas" 
       }, 
       { 
        "name": "name 4" 
       }, 
       { 
        "name": "Bombillos" 
       }, 
       { 
        "name": "Pompas" 
       }, 
       { 
        "name": "Bombillos 2" 
       }, 
       { 
        "name": "uevvaa" 
       }, 
       { 
        "name": "uevvaa" 
       }, 
       { 
        "name": "aa" 
       }, 
       { 
        "name": "ee" 
       }, 
       { 
        "name": "ee" 
       }, 
       { 
        "name": "ee" 
       }, 
       { 
        "name": "ee" 
       }, 
       { 
        "name": "ee" 
       }, 
       { 
        "name": "ee" 
       }, 
       { 
        "name": "asdasd" 
       } 
      ], 
      "company": "Company2" 
     } 
    ] 

有了這個代碼:

Gson gson = new Gson(); 
Type collectionType = new TypeToken<List<Company>>() {}.getType(); 
List<Company> lcs = (List<Company>) new Gson().fromJson(String.valueOf(value),collectionType); 

公司包含companyString,worktypes清單,worktpyes晶格結構..

怎麼了?

回答

1

準備這個類:

class Company { 
    String _id; 
    List<WorkType> worktypes = new ArrayList<WorkType>(); 
    String company; 

    class WorkType { 
     String name; 
    } 
} 

,並使用此:

List<Company> companies = gson.fromJson(myJsonString, new TypeToken<List<Company>>(){}.getType()); 
+0

有了這個,產生com.google.gson.internal.LinkedTreeMap的」清單,但我需要Company類。 – colymore

+0

我編輯了我的答案。這100%的作品。 – DmitryKanunnikoff

+0

現在工作,出了什麼問題..? – colymore

相關問題