java 获取json字符串中key对应的值

用到了Gson的JsonParser

maven项目引入

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.3</version>
</dependency>

也可以直接去这个网址下载jar包 https://mvnrepository.com/artifact/com.google.code.gson/gson

我们来解析下面这个json字符串

Java代码

import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

public class Test {
public static void main(String[] args) {
String resultStr = "{\"status\": 0,\"message\": \"query ok\","+
"\"result\": {\"address\": \"北京市海淀区镜桥\","+
"\"address_component\": {\"nation\": \"中国\",\"province\": \"北京市\","+
"\"city\": \"北京市\",\"district\": \"海淀区\","+
"\"street\": \"镜桥\",\"street_number\": \"镜桥\"}}}";

JsonParser jp = new JsonParser();
//将json字符串转化成json对象
        JsonObject jo = jp.parse(resultStr).getAsJsonObject();
        //获取message对应的值
        String message = jo.get("message").getAsString();
        System.out.println("message:" + message);
        //获取address对应的值
        String address = jo.get("result").getAsJsonObject().get("address").getAsString();
        System.out.println("address:" + address);
        //获取city对应的值
        String nation = jo.get("result").getAsJsonObject().get("address_component")
        .getAsJsonObject().get("nation").getAsString();
        System.out.println("nation:" + nation);
}
}
最后输出结果

原文地址:https://www.cnblogs.com/yachao1120/p/11747363.html

时间: 2024-11-08 18:27:36

java 获取json字符串中key对应的值的相关文章

Java任意JSON字符串中,包含指定关键词的VALUE

1 /**Java任意JSON字符串中,包含指定关键词的json值*/ 2 public static void main(String[] s){ 3 String attrjson = "{\"12\":\"100kg\",\"96\":\"sd\"}"; 4 JSONObject obj = (JSONObject) JSON.parse(attrjson); 5 String keyword = &

JObject提取Json字符串中某字段的值

JObject 1.Json字符串如下: {title:123,body:456,list:{title:'这是一个标题',body:'what'}} 2.代码如下: static void Main(string[] args) { string str = "{title:123,body:456,list:{title:'这是一个标题',body:'what'}}"; JObject o = JObject.Parse(str); Console.WriteLine(o[&quo

java获取json格式中的值

先右键项目,然后点击properties,然后选中java Builder Path,选择add external jars,引入需要引入json.jar package web; import org.json.JSONArray; import org.json.JSONException; public class josn { public static void main(String[] args) throws JSONException { String str = "[{'co

C#获取Json字符串中的某个值

问题描述: json数据格式{"resCode":0,"resMag":"aaa","data":[{"parkName": "B1停车场","freeSpaceNum":100}]}. 第一方法:使用 JavaScriptSerializer JavaScriptSerializer Jss = new JavaScriptSerializer(); Diction

C# 正则表达式获取json字符串中的键值

//定义正则表达式,解析得到  [ 与 ] 之间的内容,内容包括 [ 和 ]            //要注意这个 .*? 的写法, 附加的问号是表示尽可能短匹配,这很重要,否则返回最长匹配            string patttern = @"([).*?(])"; //解析得到 [ 与 ] 之间内容,保存在 match 中            Match match = Regex.Match(jsonString, patttern, RegexOptions.Igno

获取json数据中所有key集合

/** * 获取json数据中所有key */ function fetchResponseInfo(responseInfo){ //判断是否为空 if((!responseInfo || responseInfo.length <= 0)) { return; } //获取model var jsonCon = jQuery.parseJSON(responseInfo).model; if(!jsonCon){ return; } //获取所有key var keyArr; if(json

java 解析JSON字符串

JAVA解析json字符串:根据城市itemName名称获取其码itemCode 1.json字符串 [{"childList":        [{"childList":            [{"childList":[],"id":374,"itemCode":"110101","itemName":"东城区","itemNam

javascript获取json对象的key名称的两种方法

javascript获取json对象的key名称的两种方法 数据处理中,你可能接收到一个不确定内容格式的json对象,然后要把key的值提取出来.今天试过两种可以提取json key的方法,均可以正常工作. 先看第一种方法 jsonObj = { Name: 'richard', Value: '8' }for (key in jsonObj){ console.log(key); //add your statement to get key value} 结果 NameValue 第二种方法

js获取一个字符串中指定字符串第n次出现的位置

1.JS获取一个字符串中指定字符串第n次出现的位置 了解类似的获取字符位置的方法: 1.1 charAt() 获取字符串指定位置的字符 用法:strObj是字符串对象,index是指定的位置,(位置从0开始数) strObj.charAt(index) 1.2 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置 用法:stringObject是字符串对象,searchvalue是指定的字符串值,fromindex(可有可无)指定开始匹配字符串值的位置,若无,表示从0位置开始