1. 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());
2. Android 中解析 JSON
JSON( javaScript Object Notation ) 是一種輕量級的數據交換格式。易於閱讀和編寫,同時也易於機器解析和生成。
JSON 建構於兩種結構:
JSON 具有以下這些格式:
參考: Android 中 解析 JSON
Android 提供類四種不同的類來操作 JSON 數據。這些類是 JSONArray、JSONObject、JSONStringer 和 JSONTokenizer
為了解析 JSON 對象,須先創建一個 JSONObject 類的對象,需要傳入需解析的字元串 JSONObject root = new JSONObject(candyJson); 然後根據 JSONObject 對象提供方法以及數據類型解析對應 json 數據。下表展示一些 JSONObiect 提供的方法
示例:
3. android怎麼解析json文件
android 下有自帶的對json字元串處理的包的,都在org.json包下
//注意要拋出異常,用try,catch或直接拋異常
JSONObjectobject=newJSONObject(result);
//獲取resultcode對象,其它類推
Stringresultcode=object.getString("resultcode");
//獲取data列表
JSONArrayarray=object.getJSONArray("data");
for(inti=0;i<array.length;i++){
//獲取列表第i個json對象
JSONObjectobj=array.get(i);
//獲取經度、維度
Stringlongitude=obj.getString("O_LNG");
Stringlatitude=obj.getString("O_LAT");
}
當然,你用其它的json處理的包也行,大同小異
4. android如何從網頁中獲取一個json數組並解析出來,顯示在textview裡面
1,先要建立一個線程獲取json數據
2接著解析json數據
3,設置textview
例如:json數據,strjson= {"key": ["a","b"]}
JSONObject object = new JSONObject (strjson)
JSONArray arr= object.getJSONArray("key") ;
String text=arr.getString(0);
5. android 用JSON 解析數據介面方法
介面獲取下來的數據為
{"status":200,"message":"查詢成功","data":{"id":32,"user_id":null,"user_code":null,"user_pass":null,"meeting_id":"1","meeting_pass":null,"config_param_ip":"11.1.1.70","port":"6501","web_config_param_ip":"11.1.1.70","web_port":"6501","unit_code":null,"create_time":null,"update_time":null,"status":0,"userCode":"video1","userPass":"video1","meetingId":"1","meetingPass":"","apiPort":"13000","username":"admin","password":"123456","updateTime":"2021-11-08 17:45:29"}}
使用方法
try {
JSONObject jsonObject = new JSONObject(outstring);
int resultCode = jsonObject.getInt("status");
if (resultCode == 200) {
JSONObject obj = jsonObject.getJSONObject("data");
IP = obj.getString("config_param_ip");
port = obj.getString("web_port");
username = obj.getString("userCode");
password = obj.getString("userPass");
roomID = Integer.parseInt(obj.getString("meetingId"));
roomPassword = obj.getString("password");
} else {
ToastUtils.showShort("查詢失敗");
}
goVideo();
} catch (Exception e) {
e.printStackTrace();
}
6. 求助android解析JSON的問題
http://www.bejson.com/go.php?u=http://www.bejson.com/index.php
這是一個json格式驗證的鏈接,可以驗證自己寫的json格式是否正確