Java
Chilkat2 Java
Azure Maps Get Search Address
See more Azure Maps Examples
Get information for a given address.Chilkat Java Downloads
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Http;
import com.chilkatsoft.chilkat2.JsonObject;
public class ChilkatExample {
public static void main(String[] args) {
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Http http = new Http();
http.setAccept("application/json");
String url = "https://atlas.microsoft.com/search/address/{$format}?subscription-key=[subscription-key]&api-version=1.0&query={$query}";
http.setUrlVar("format", "json");
http.setUrlVar("query", "15127 NE 24th Street, Redmond, WA 98052");
String strResp;
try {
strResp = http.quickGetStr(url);
} catch (ChilkatException e) {
System.out.println(e.getLastErrorText());
return;
}
System.out.println("Response Status Code: " + http.getLastStatus());
JsonObject jsonResponse = new JsonObject();
jsonResponse.load(strResp);
jsonResponse.setEmitCompact(false);
System.out.println(jsonResponse.emit());
if (http.getLastStatus() != 200) {
System.out.println("Failed.");
return;
}
// Sample output...
// (See the parsing code below..)
//
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
// {
// "summary": {
// "query": "15127 NE 24th Street, Redmond, WA 98052",
// "queryType": "NON_NEAR",
// "queryTime": 58,
// "numResults": 1,
// "offset": 0,
// "totalResults": 1,
// "fuzzyLevel": 1
// },
// "results": [
// {
// "type": "Point Address",
// "id": "US/PAD/p0/19173426",
// "score": 14.51,
// "address": {
// "streetNumber": "15127",
// "streetName": "NE 24th St",
// "municipalitySubdivision": "Redmond",
// "municipality": "Redmond, Adelaide, Ames Lake, Avondale, Earlmount",
// "countrySecondarySubdivision": "King",
// "countryTertiarySubdivision": "Seattle East",
// "countrySubdivision": "WA",
// "postalCode": "98052",
// "extendedPostalCode": "980525544",
// "countryCode": "US",
// "country": "United States Of America",
// "countryCodeISO3": "USA",
// "freeformAddress": "15127 NE 24th St, Redmond, WA 980525544",
// "countrySubdivisionName": "Washington"
// },
// "position": {
// "lat": 47.6308,
// "lon": -122.1385
// },
// "viewport": {
// "topLeftPoint": {
// "lat": 47.6317,
// "lon": -122.13983
// },
// "btmRightPoint": {
// "lat": 47.6299,
// "lon": -122.13717
// }
// },
// "entryPoints": [
// {
// "type": "main",
// "position": {
// "lat": 47.6315,
// "lon": -122.13852
// }
// }
// ]
// }
// ]
// }
//
String v_type = "";
String id = "";
String score = "";
String addressStreetNumber = "";
String addressStreetName = "";
String addressMunicipalitySubdivision = "";
String addressMunicipality = "";
String addressCountrySecondarySubdivision = "";
String addressCountryTertiarySubdivision = "";
String addressCountrySubdivision = "";
String addressPostalCode = "";
String addressExtendedPostalCode = "";
String addressCountryCode = "";
String addressCountry = "";
String addressCountryCodeISO3 = "";
String addressFreeformAddress = "";
String addressCountrySubdivisionName = "";
String positionLat = "";
String positionLon = "";
String viewportTopLeftPointLat = "";
String viewportTopLeftPointLon = "";
String viewportBtmRightPointLat = "";
String viewportBtmRightPointLon = "";
int j = 0;
int count_j = 0;
String summaryQuery = jsonResponse.stringOf("summary.query");
String summaryQueryType = jsonResponse.stringOf("summary.queryType");
int summaryQueryTime = jsonResponse.intOf("summary.queryTime");
int summaryNumResults = jsonResponse.intOf("summary.numResults");
int summaryOffset = jsonResponse.intOf("summary.offset");
int summaryTotalResults = jsonResponse.intOf("summary.totalResults");
int summaryFuzzyLevel = jsonResponse.intOf("summary.fuzzyLevel");
int i = 0;
int count_i = jsonResponse.sizeOfArray("results");
while (i < count_i) {
jsonResponse.setI(i);
v_type = jsonResponse.stringOf("results[i].type");
id = jsonResponse.stringOf("results[i].id");
score = jsonResponse.stringOf("results[i].score");
addressStreetNumber = jsonResponse.stringOf("results[i].address.streetNumber");
addressStreetName = jsonResponse.stringOf("results[i].address.streetName");
addressMunicipalitySubdivision = jsonResponse.stringOf("results[i].address.municipalitySubdivision");
addressMunicipality = jsonResponse.stringOf("results[i].address.municipality");
addressCountrySecondarySubdivision = jsonResponse.stringOf("results[i].address.countrySecondarySubdivision");
addressCountryTertiarySubdivision = jsonResponse.stringOf("results[i].address.countryTertiarySubdivision");
addressCountrySubdivision = jsonResponse.stringOf("results[i].address.countrySubdivision");
addressPostalCode = jsonResponse.stringOf("results[i].address.postalCode");
addressExtendedPostalCode = jsonResponse.stringOf("results[i].address.extendedPostalCode");
addressCountryCode = jsonResponse.stringOf("results[i].address.countryCode");
addressCountry = jsonResponse.stringOf("results[i].address.country");
addressCountryCodeISO3 = jsonResponse.stringOf("results[i].address.countryCodeISO3");
addressFreeformAddress = jsonResponse.stringOf("results[i].address.freeformAddress");
addressCountrySubdivisionName = jsonResponse.stringOf("results[i].address.countrySubdivisionName");
positionLat = jsonResponse.stringOf("results[i].position.lat");
positionLon = jsonResponse.stringOf("results[i].position.lon");
viewportTopLeftPointLat = jsonResponse.stringOf("results[i].viewport.topLeftPoint.lat");
viewportTopLeftPointLon = jsonResponse.stringOf("results[i].viewport.topLeftPoint.lon");
viewportBtmRightPointLat = jsonResponse.stringOf("results[i].viewport.btmRightPoint.lat");
viewportBtmRightPointLon = jsonResponse.stringOf("results[i].viewport.btmRightPoint.lon");
j = 0;
count_j = jsonResponse.sizeOfArray("results[i].entryPoints");
while (j < count_j) {
jsonResponse.setJ(j);
v_type = jsonResponse.stringOf("results[i].entryPoints[j].type");
positionLat = jsonResponse.stringOf("results[i].entryPoints[j].position.lat");
positionLon = jsonResponse.stringOf("results[i].entryPoints[j].position.lon");
j = j + 1;
}
i = i + 1;
}
}
}