1
我有一個JSON字符串,看起來像這樣:我有一個JSON字符串,我不能提取特定領域
{
"results" : [
{
"address_components" : [
{
"long_name" : "Arad",
"short_name" : "Arad",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Arad",
"short_name" : "Arad",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Arad County",
"short_name" : "AR",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Romania",
"short_name" : "RO",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Arad, Romania",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 46.2217118,
"lng" : 21.3823449
},
"southwest" : {
"lat" : 46.1286902,
"lng" : 21.230371
}
},
"location" : {
"lat" : 46.1865606,
"lng" : 21.3122677
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 46.2217118,
"lng" : 21.3823449
},
"southwest" : {
"lat" : 46.1286902,
"lng" : 21.230371
}
}
},
"place_id" : "ChIJw1lco0uYRUcRkYRVPkoHcA8",
"types" : [ "locality", "political" ]
}
],
"status" : "OK"
}
我的Java代碼:
jsonString = readUrl("https://maps.googleapis.com/")
rootNode = objectMapper.readTree(jsonString);
JsonNode resultsNode = rootNode.path("results");
JsonNode addressNode = resultsNode.path("address_components");
JsonNode geometryNode = addressNode.path("geometry");
JsonNode locationNode = geometryNode.path("location");
JsonNode latNode = locationNode.path("lat");
JsonNode lngNode = locationNode.path("lng");
System.out.println(latNode.asDouble());
System.out.println(lngNode.asDouble());
最後2行式打印0.0和0.0。我怎樣才能從這個json獲取lat和lng信息? p.s我沒有發佈完整的網址鏈接。 也許jsonNodes不正確,但我找不到解決方案。
'geometry' ISN」 t在'address_components'中。不應該代碼是'JsonNode locationNode = resultsNode.path(「location」);'? –