我正在使用net.sf.json
库进行json To java
转换,反之亦然
我有以下字符串:
String jsonStr = "{\"name\" : \"abc\",\"address\" : \"def\"}"; // line 1
我尝试使用以下代码将上述字符串验证为有效的 json 数组:
JSONArray arr = JSONArray.fromObject(jsonStr); // line 2
System.out.println(arr.isArray()); // line 3
但我在第 2 行得到以下异常
Exception in thread "main" net.sf.json.JSONException: A JSONArray text must start with '[' at character 1 of {"name" : "abc","address" : "def"}
at net.sf.json.util.JSONTokener.syntaxError(JSONTokener.java:527)
at net.sf.json.JSONArray._fromJSONTokener(JSONArray.java:1146)
at net.sf.json.JSONArray._fromString(JSONArray.java:1226)
at net.sf.json.JSONArray.fromObject(JSONArray.java:151)
at net.sf.json.JSONArray.fromObject(JSONArray.java:129)
at com.example.WsClient.main(WsClient.java:2) //
现在类中没有静态方法JSONArray
可以将其验证为有效的 json 字符串,因此我必须创建一个 json 数组然后对其进行验证。但是我在创建数组时遇到了异常。那么我该如何使用这种方法呢?
我如何验证上面的字符串是一个valid json Array
?
编辑:目前字符串是一个对象,但如果我创建一个以字符串为参数的方法以转换为 jsonArray。如何验证字符串是否为有效的 json 数组?