大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说json与string转换:com.alibaba.fastjson.JSONObject,希望您对编程的造诣更进一步.
在实际的使用中经常会需要将string
转成json
类型
String转为json对象
public class Str2Json {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "{\"cases\"[{\"classname\":\"HttpGet\",\"url\":\"https://www.baidu.com\"},{\"classname\":\"HttpPost\",\"url\":\"https:www.qq.com\"}]}";
JSONObject json;
json = JSON.parseObject(str);
System.out.println(json);
}
}
输出结果:
{"cases":[{"classname":"HttpGet","url":"https://www.baidu.com"},{"classname":"HttpPost","url":"https:www.qq.com"}]}
从结果看好像str
和json
区别不大,但是json
支持的方法已经改变,可以直接通过json
提取相关的内容了。具体如下:
public class Str2Json {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "{\"cases\"[{\"classname\":\"HttpGet\",\"url\":\"https://www.baidu.com\"},{\"classname\":\"HttpPost\",\"url\":\"https:www.qq.com\"}]}";
JSONObject json;
json = JSON.parseObject(str);
System.out.println(json.getString("cases"));
}
}
输出结果:
[{"classname":"HttpGet","url":"https://www.baidu.com"},{"classname":"HttpPost","url":"https:www.qq.com"}]
还有其他的方法,根据需要使用就好。例如json.getJSONArray("cases")
,可以直接转成list
类型
String转JSONArray
public class Str2Json {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "{\"cases\"[{\"classname\":\"HttpGet\",\"url\":\"https://www.baidu.com\"},{\"classname\":\"HttpPost\",\"url\":\"https:www.qq.com\"}]}";
JSONObject json;
json = JSON.parseObject(str);
String jsonstr = json.getString("cases");
System.out.println(JSONArray.parseArray(jsonstr));
}
}
输出结果:
[{"classname":"HttpGet","url":"https://www.baidu.com"},{"classname":"HttpPost","url":"https:www.qq.com"}]
可以看成jsonstr
是个String
类型,获取到里面完整的元素有点困难,转成JSONArray
类型后,与使用list
元素类似
public class Str2Json {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "{\"cases\"[{\"classname\":\"HttpGet\",\"url\":\"https://www.baidu.com\"},{\"classname\":\"HttpPost\",\"url\":\"https:www.qq.com\"}]}";
JSONObject json;
json = JSON.parseObject(str);
String jsonstr = json.getString("cases");
System.out.println(JSONArray.parseArray(jsonstr).get(0));
}
}
输出结果:
{"classname":"HttpGet","url":"https://www.baidu.com"}
轻松根据索引获取了需要的数据。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/12998.html