0
我正在尋找一種將字符串解析爲json數組的方法,以便我可以迭代它並訪問其中的對象。我一直在四處尋找,但沒有任何幫助。在速度模板中將字符串解析爲JSONArray
我發現這是
#set ($myjson = $json.fetch('http://www.url.org/feeds/json-packages.dot'))
的一種方式,但我想分析一個本地字符串變量成JSON數組。我們怎麼做到這一點?
我正在尋找一種將字符串解析爲json數組的方法,以便我可以迭代它並訪問其中的對象。我一直在四處尋找,但沒有任何幫助。在速度模板中將字符串解析爲JSONArray
我發現這是
#set ($myjson = $json.fetch('http://www.url.org/feeds/json-packages.dot'))
的一種方式,但我想分析一個本地字符串變量成JSON數組。我們怎麼做到這一點?
您可以使用類似this的庫,並將速度上下文中放入一個「JSONUtils」對象。這個對象將暴露的方法「jsonArrayFromString」,其實施是簡單的
public JSONArray jsonArrayFromString(String jsonString) {
try {
return new JSONArray(jsonString);
} catch (JSONException e) {
throw new RuntimeException(e);
}
}
這裏是JSONArray類的文檔。然後你就可以在你的模板中使用這個對象是這樣的:
#set ($myjson = $JSONUtils.jsonArrayFromString($myString))
#set ($length = $myjson.length())
#foreach($i in [0..$length-1])
## Use one of the getter methods for the object in this index.
#end
當然,你也可以把從一個字符串創建一個JSONObject類似的方法。