我在将jsonObject转换为jsonArray
时遇到问题这是我的Json字符串:
***Setting***
Library Screenshot
*** Test Cases ***
My Test Case
Screenshot.Set Screenshot Directory /home/richard
Take Screenshot my_image.jpg
我已经使用在线工具验证了这个json,它是有效的。
但是当我尝试将它放入JSONArray时,它会给我这个例外:
org.json.JSONException:Value [{"的firstName":"超级"" lastName的":"用户"" EMPID":&#34 ;管理员"" PSWD":" 056118220216006084031189006230102079245048053200""位置":空," contactNo":空," backupCode":空,"电子邮件":" 0"" hcode":空," empStatus":" A& #34;" createdBy":空," dateAdded":空," updatedBy":空," dateUpdated":空,&# 34;配置文件ID":空," locationsID":空,"前者":空," secContact":空," NoOfAttempts" :空,"工作站":空}] 在无法转换java.lang.String类型的GetAllEmployeeResult 到JSONArray
以下是我的代码:
{"GetAllEmployeeResult":"[{\"firstName\":\"Super\",\"lastName\":\"User\",\"empID\":\"admin\",\"pswd\":\"2031189006230102079245048053200\",\"position\":null,\"contactNo\":null,\"backupCode\":null,\"email\":\"0\",\"hcode\":null,\"empStatus\":\"A\",\"createdBy\":null,\"dateAdded\":null,\"updatedBy\":null,\"dateUpdated\":null,\"profileID\":null,\"locationsID\":null,\"former\":null,\"secContact\":null,\"NoOfAttempts\":null,\"workstation\":null}]"}
* buffer hold JSON string
由于
答案 0 :(得分:3)
因为GetAllEmployeeResult
键的值是String
,而不是JSONArray
。 JSONArray
周围有双引号。
答案 1 :(得分:1)
你可以像这样改变它
JsonArray array = new JsonArray(jObject.getString("GetAllEmployeeResult"));
答案 2 :(得分:0)
使用Java API进行JSON处理,要将JsonObject转换为JsonArray,也可以在下面尝试。
JsonArray array = Json.createArrayBuilder()
.add(jObject)
.build();