2017-08-15 6 views
-1

他の同じ質問から多くの提案を試みましたが、役に立たない、どうすればこのテストをうまく実行できますか?com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:BEGIN_ARRAYが期待されていましたが、行1の列2のパスでSTRINGでした

@Test 
fun isJsonCorrectPersonConvert() { 
    val gson = GsonBuilder().create() 
    val json = gson.toJson("[{\"Id\":2,\"Text\":\"Математика\"},{\"Id\":5,\"Text\":\"Физика\"}]") 
    val results = gson.fromJson(json, Array<Person>::class.java) 
    Assert.assertNotNull(results) 
    Assert.assertNotNull(results[0].Id) 
    Assert.assertNotNull(results[0].Text) 
    System.out.println(results.toString()) 
} 

data class Person(val Id: Int,val Text:String) 

答えて

1

これを試してみてください:

val json: String = "[{\"Id\":2,\"Text\":\"Математика\"},{\"Id\":5,\"Text\":\"Физика\"}]" 
val results: List<Person> = gson.fromJson(json , Array<Person>::class.java).toList() 
関連する問題