我很困惑如何获取这个JSON值,我试过但我不确定:
这是我的JSON网址:
JSONObject ishu=new JSONObject(String url);//URL OF MY JSON!!
JSONObject COORD=ishu.getJSONObject("coord");
String LON=1.getString("lon");
String LAT=1.getString("lat");
JSONObject ishu1=ishu.getJSONObject("weather");
JSONArray jsonarray=new JSONArray(jsonStr);
for(int i=0;i<jsonarray.length();i++)
{
JSONObject jsonobject=jsonarray.getJSONObject(i);
String id=jsonobject.getString("id");
String main=jsonobject.getString("main");
Stirng description=jsonobject.getString("description");
String icon=jsonobject.getString("icon");
}
JSONObject ishu2=ishu.getJSONObject("base");
String MAIN=ishu.getString("main");
String TEMP=MAIN.getString("temp");
String PRESSURE=MAIN.getString("pressure");
String HUMIDITY=MAIN.getString("humidity");
String TEMP_MIN=MAIN.getString("temp_min");
String TEMP_MAX=MAIN.getString("temp_max");
JSONObject WIND=ishu.getJSONObject("wind");
String SPEED=WIND.getString("speed");
String DEG=WIND.getString("deg");
String GUST=ishu.getString("gust");
JSONObject ishu4=ishu.getJSONObject("rain");
JSONObject 1H=ishu4.getJSONObject("1h");
JSONObject ishu5=ishu.getJSONObject("clouds");
String ALL =ishu5.getString("all");
JSONObject ishu6=ishu.getJSONObject("dt");
String SYS=ishu.getString("sys");
String TYPE=SYS.getString("type");
String ID=SYS.getString("id");
String MESSAGE=SYS.getString("message");
String COUNTRY=SYS.getString("country");
String SUNRISE=SYS.getString("sunrise");
String SUNSET=SYS.getString("sunset");
JSONObject ishu7=ishu.getJSONObject("id");
JSONObject ishu8=ishu.getJSONObject("name");
JSONObject ishu9=ishu.getJSONObject("cod");
这就是我试图获取json值的方法。
cognitoUser.signOut();
答案 0 :(得分:0)
使用RestFul服务(默认HttpUrlConnection / Volly库)下载您的JSon文件,并将下载的字符串提供给您编码的上方。
更好地使用任何解析工具,然后手动执行。 http://blog.takipi.com/the-ultimate-json-library-json-simple-vs-gson-vs-jackson-vs-json/
GSon易于使用,而且来自谷歌。
简单如下
ModelClass object = new Gson().fromJson(JsonString, ModelClass.class);
答案 1 :(得分:0)
您似乎首先需要从api.openweathermap.com获得回复。
URL url= new URL("<your url here>");
HttpURLConnection connnection = (HttpURLConnection) url.openConnection();
connnection.setRequestMethod("GET");
InputStream is = connnection.getInputStream();
从is
读取您的JSON,之后您可以执行JSONObject obj = new JSONObject(<your string here>);