HelloScriptEngineJson

tags : java6 scriptengine json

■コード

package hello.javax.script;

import javax.script.ScriptEngine;

import javax.script.ScriptEngineManager;

import javax.script.ScriptException;

public class HelloScriptEngineJson {

public static void main(String[] args) {

// Get the JavaScript engine

ScriptEngineManager manager = new ScriptEngineManager();

ScriptEngine engine = manager.getEngineByName("JavaScript");

String json = "{\"name\":\"John Smith\", \"age\": 33,\"arr\":[\"AAA\",\"BBB\",\"CCC\"]}";

String script = "var obj = " + json + ";";

try {

engine.eval(script);

{

String name = (String) engine.eval("obj.name");

System.out.println(name);

}

{

Double age = (Double) engine.eval("obj.age");

System.out.println(age);

}

{

Double length = (Double) engine.eval("obj.arr.length");

for (int n = 0; n < length; n++) {

System.out.println(engine.eval("obj.arr[" + n + "]"));

}

}

} catch (ScriptException e) {

e.printStackTrace();

}

}

}