2 jiaoxiaobin50 jiaoxiaobin50 于 2016.03.16 15:50 提问

json对象的解析,小弟解析不出来,请大神帮忙

我的配置文件中是这样的
content=[{"title": "\u6807\u9898"},{"author": "\u4F5C\u8005"},{"time":"\u65F6\u95F4"}]
我在服务层想取到title,author,time的具体值
服务层代码是这样的,可是解析不出来,哪位大神帮我看一下出了什么问题,并附上代码,谢谢
public String addContent(HttpServletRequest request,HttpServletResponse response) throws Exception{
String fileName="smsTemp";
PropertiesUtil smsTempProperties = new PropertiesUtil(fileName);
String content =smsTempProperties.readValue("content");
JSONObject contentObject = JSONObject.fromObject(content);
String title=contentObject.optString("title");
String author=contentObject.optString("author");
String time=contentObject.optString("time");
System.out.println(author);
System.out.println(title);
System.out.println(time);
return "root/smsTemp/add_smsTemp";

}

3个回答

bdmh
bdmh   Ds   Rxr 2016.03.16 16:03

你这是个数组,用JsonArray转,或者你用gson插件直接转为对象实例

jiaoxiaobin50
jiaoxiaobin50 谢谢,第一次写项目,我把它拆成单个的了,功能就实现了
一年多之前 回复
u013772876
u013772876   2016.03.16 16:27

你的json是数组,可以先转成List,在去遍历取值。

jiaoxiaobin50
jiaoxiaobin50 恩恩,谢谢,已经做好了
一年多之前 回复
zl_china
zl_china   2016.03.22 09:58

手打的,你试试
Jsonarray array = new Jsonarray(content);
for(int i=0;i<array.lenth();i++){
jsonobject contentObject = array.jsonObject(i);
String title=contentObject.optString("title");
String author=contentObject.optString("author");
String time=contentObject.optString("time");
}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!