android如何解析json
❶ android 獲取了json 類型的數據,怎麼解析
JSONObject dataJson=new JSONObject("你的Json數據「);
JSONObject response=dataJson.getJSONObject("response");
JSONArray data=response.getJSONArray("data");
JSONObject info=data.getJSONObject(0);
String province=info.getString("province");
String city=info.getString("city");
String district=info.getString("district");
String address=info.getString("address");
System.out.println(province+city+district+address);
❷ Android 解析這樣的json數據怎麼解析
先將字元串轉換為json對象或數組
這段字元串中以]結尾為數組
JSonArray array = new JSonArray
遍歷這個數組獲得對應的對象
for(int i = 0 ; i < array.length() ;i++){
JSONObject obj = array.getJSONObject(i);
}
❸ android怎麼讀取外部json文件
java">比如說讀取sd卡里的
privatestaticStringSDCardPATH=Environment.getExternalStorageDirectory()+"/";
/**
*讀取文本文件
*
*@paramfilePath
*@return
*/
(StringfilePath){
StringBuildersb=newStringBuilder();
try{
Filefile=newFile(SDCardPATH+filePath);
InputStreamin=null;
in=newFileInputStream(file);
inttempbyte;
while((tempbyte=in.read())!=-1){
sb.append((char)tempbyte);
}
in.close();
}catch(Exceptione){
e.printStackTrace();
}
returnsb.toString();
}
然後你就可以進行你的解析json了。
❹ android怎麼看json數據格式
JSON有兩種表示結構,對象和數組。
對象結構以」{」大括弧開始,以」}」大括弧結束。中間部分由0或多個以」,」分隔的」key(關鍵字)/value(值)」對構成,關鍵字和值之間以」:」分隔,語法結構如下
{
key1:value1,
key2:value2,
}其中關鍵字是字元串,而值可以是字元串,數值,true,false,null,對象或數組
數組結構以」[」開始,」]」結束。中間由0或多個以」,」分隔的值列表組成,語法結構如下
[
{
key1:value1,
key2:value2
},
{
key3:value3,
key4:value4
}
]
❺ android如何從一個網路介面中獲得json數據,並且進行解析呢
你可以用jsonsmart來解析: JSONValue.parseStrict(返回的數據) 進行解析,之後再根據json欄位拿數據
❻ android 解析json用那個包裡面的方法比較好呢
android 解析json還有用Google出品的Gson比較好,具體步驟為:
1、首先,從 code.google.com/p/google-gson/downloads/list下載GsonAPI:
google-gson-1.7.1-release.zip 把gson-1.7.jar 到libs(項目根目錄新建一個libs文件夾)中。 可以使用以下兩種方法解析JSON數據,通過獲取JsonReader對象解析JSON數據。
代碼如下:
String jsonData = "[{\"username\":\"arthinking\",\"userId\":001},{\"username\":\"Jason\",\"userId\":002}]";
try{
JsonReader reader = new JsonReader(new StringReader(jsonData));
reader.beginArray();
while(reader.hasNext()){
reader.beginObject();
while(reader.hasNext()){
String tagName = reader.nextName();
if(tagName.equals("username")){
System.out.println(reader.nextString());
}
else if(tagName.equals("userId")){
System.out.println(reader.nextString());
}
}
reader.endObject();
}
reader.endArray();
}
catch(Exception e){
e.printStackTrace();
}
2、使用Gson對象獲取User對象數據進行相應的操作:
代碼如下:
Type listType = new TypeToken<LinkedList<User>>(){}.getType();
Gson gson = new Gson();
LinkedList<User> users = gson.fromJson(jsonData, listType);
for (Iterator iterator = users.iterator(); iterator.hasNext();) {
User user = (User) iterator.next();
System.out.println(user.getUsername());
System.out.println(user.getUserId());
}
3、如果要處理的JSON字元串只包含一個JSON對象,則可以直接使用fromJson獲取一個User對象:
代碼如下:
String jsonData = "{\"username\":\"arthinking\",\"userId\":001}";
Gson gson = new Gson();
User user = gson.fromJson(jsonData, User.class);
System.out.println(user.getUsername());
System.out.println(user.getUserId());
❼ android怎麼解析json文件
你好,我試過了,這樣能取到你要的結果:
用的gson-2.2.4.jar包,你應該有吧,沒有網路搜下去下個就好了。
importcom.google.gson.JsonArray;
importcom.google.gson.JsonObject;
importcom.google.gson.JsonParser;
publicclassMyTest{
publicstaticvoidmain(String[]args){
Stringjson="{'resultcode':'200','reason':'ReturnSuccessd!','result':{'data':[{'MCC':'460','MNC':'1','LNG':'120.721423','LAT':'31.29854','O_LNG':'120.72577772352','O_LAT':'31.296529947917','PRECISION':'1101','ADDRESS':'江蘇省蘇州市吳中區金雞湖大道368號'}]}}";
JsonParserjsonParser=newJsonParser();
JsonObjectjsonObj=jsonParser.parse(json).getAsJsonObject();
JsonObjectresult=jsonObj.get("result").getAsJsonObject();
JsonArraydata=result.get("data").getAsJsonArray();
StringO_LNG=data.get(0).getAsJsonObject().get("O_LNG").getAsString();
StringO_LAT=data.get(0).getAsJsonObject().get("O_LAT").getAsString();
StringADDRESS=data.get(0).getAsJsonObject().get("ADDRESS").getAsString();
System.out.println(O_LNG);
System.out.println(O_LAT);
System.out.println(ADDRESS);
}
}