有些时候我们需要将json字符串转换成数组,并且只取一些属性值进行下一个方法的赋值,这样就涉及到了json字符串的转换了,
json字符串有两种形式,一种是以{A,B,C},一种是[{A},{B},{C}]。但是很多时候是这两种的结合。
首先导入jar包
<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.47</version></dependency>
如果是第一种只需要加入以下代码,注意,str是json字符串
JSONObject json=(JSONObject)JSONObject.toJSON(JSON.parse(str));System.out.println("facesets:"+json.getString("facesets"));
是第二种用以下代码
JSONArray temp=JSONArray.parseArray(json.getString("facesets"));for(int i=0;i<temp.size();i++){JSONObject obj=(JSONObject)temp.get(i);System.out.println(obj.getString("faceset_token"));}
很多时候是二者的结合
JSONObject json=(JSONObject)JSONObject.toJSON(JSON.parse(str));System.out.println("facesets:"+json.getString("facesets"));JSONArray temp=JSONArray.parseArray(json.getString("facesets"));for(int i=0;i<temp.size();i++){JSONObject obj=(JSONObject)temp.get(i);System.out.println(obj.getString("faceset_token"));}
可以看一下输出结果
希望对你们有帮助