2017-06-06 13 views
0

文字列をjson配列に解析する方法を探しているので、同じものを繰り返し処理してその中のオブジェクトにアクセスすることができます。私はしばらくの間見回してきましたが、助けはありませんでした。JSONArrayの文字列を速度テンプレートで解析する

私は

#set ($myjson = $json.fetch('http://www.url.org/feeds/json-packages.dot')) 

ある一つの方法を見つけましたが、私は、JSONの配列に一つのローカル文字列変数を解析します。どうすればそれをすることができますか?

答えて

1

thisのようなライブラリを使用して、速度コンテキストに「JSONUtils」オブジェクトを入れることができます。このオブジェクトは、その実装

public JSONArray jsonArrayFromString(String jsonString) { 
    try { 
     return new JSONArray(jsonString); 
    } catch (JSONException e) { 
     throw new RuntimeException(e); 
    } 
} 

のような単純なものだろう方法「jsonArrayFromString」を、公開するでしょう。ここ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を作成し、同様の方法を置くことができます。