使用Java操作JSON字符串对象
http://www.blogjava.net/Werther/archive/2010/01/20/310262.html
代码样例:
// 输出结果为{"version": 4,"addr": "192.160.1.11"} private static void test1() { String s = "{\"internal_1\": [{\"version\": 4,\"addr\": \"192.160.1.11\"}]}"; String regex = ".+?\\[(.+?)\\].+?"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(s); if (matcher.matches()) { String group = matcher.group(1); System.out.println(group); }else { System.out.println("no matches!!"); } } // 输出结果为{"Done":1,"ReturnType":1,"Msg":"HELLO,上海"} private static void test2() { String s="TestJsonResponse{TestJsonResult={\"Done\":1,\"ReturnType\":1,\"Msg\":\"HELLO,上海\"};}"; String regex = ".+?\\=(.+?)\\;.+?"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(s); if (matcher.matches()) { String group = matcher.group(1); System.out.println(group); }else { System.out.println("no matches!!"); } } //结果为HELLO,上海 private static void test3() { /*JSONObject jsonObject = new JSONObject(); try { jsonObject.put("a", 1); jsonObject.put("b", 1.1); jsonObject.put("c", 1L); jsonObject.put("d", "test"); jsonObject.put("e", true); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(jsonObject); // 输出{"d":"test","e":true,"b":1.1,"c":1,"a":1} try { System.out.println(jsonObject.getString("d"));// 输出test } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } */ String s="{\"Done\":1,\"ReturnType\":1,\"Msg\":\"HELLO,上海\"}"; try { JSONObject jsonObject2 = new JSONObject(s); System.out.println(jsonObject2.getString("Msg")); // 输出HELLO,上海 } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } }