参考资料: http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html
测试IDE: Intelijj
坎坷:
- 按照文档,下载了json-lib-2.4-jdk15.jar
- 开始写代码 (忘记了下载其他的依赖了)
- 编译,没有问题
- 执行,类找不见
- 由于不熟悉,浪费了一些时间
- 解决办法:
- 把异常中找不见的类放在程序的上面import一下(当然,肯定没有该类),IDE会提示类找不见,但是提示中可以“find in web”
- 然后就“find in web”,下载后,继续允许,继续报“类找不见”(当然,是其它的类),继续步骤1,直到不再报错
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
package phpor.json; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import net.sf.json.util.JSONUtils; import java.util.HashMap; import java.util.Map; public class Test { public static void main(String[] args) { Map<String, String> map1 = new HashMap<String, String>(); map1.put("name", "phpor"); JSONArray ja1 = JSONArray.fromObject(map1); String json_obj = ja1.toString(); String json_str = JSONUtils.valueToString(ja1.toString()); System.out.println(); System.out.println(json_obj); System.out.println(json_str + "\n"); JSONObject jo1 = new JSONObject(); jo1.put("str", json_str); jo1.put("obj", json_obj); System.out.println("期望看到的"); System.out.println("{\"str\":\"[{\\\"name\\\":\\\"phpor\\\"}]\\\"}]\",\"obj\":[{\"name\":\"phpor\"}]}"); System.out.println(); System.out.println("实际看到的"); System.out.println(jo1.toString()); } } |
输出结果:
1 2 3 4 5 6 7 8 9 10 |
[{"name":"phpor"}] "[{\"name\":\"phpor\"}]" 期望看到的 {"str":"[{\"name\":\"phpor\"}]\"}]","obj":[{"name":"phpor"}]} 实际看到的 {"str":"[{\\\"name\\\":\\\"phpor\\\"}]","obj":[{"name":"phpor"}]} Process finished with exit code 0 |