2010-06-15

Groovy 使用 JSON-simple

想在 Groovy 上使用 JSON,想說 Json-lib 還滿多人用的,就試試看。結果,Json-lib 相依性太多,還需要另外 4 支 jar,而且 run 的時候,錯誤一堆,浪費一些時間後,決定放棄 Json-lib。
後來找到 json-simpe, 果然比較簡單, 搭配 Groovy 顯得更容易使用。不過中文的部份似乎不會轉成 Unicode 的表示法, 這部份在傳給別的程式語言時可能會發生問題。

import org.json.simple.*;
def map = [abc:123, def:'哈囉']
def list = [5,8,12, "lin", map, null]
println JSONValue.toJSONString(list)
def str ='[5,8,12,"lin",{"abc":123,"def":"哈囉"},null]'
def obj = JSONValue.parse(str)
obj.each{
 println "$it ::: ${it.getClass().name}"
}
obj[4].each{
 println "$it.key = $it.value"
}
/*
  [5,8,12,"lin",{"abc":123,"def":"哈囉"},null]
  5 ::: java.lang.Long
  8 ::: java.lang.Long
  12 ::: java.lang.Long
  lin ::: java.lang.String
  [abc:123, def:哈囉] ::: org.json.simple.JSONObject
  null ::: org.codehaus.groovy.runtime.NullObject
  abc = 123
  def = 哈囉
*/

沒有留言:

FB 留言