[英]Parsing JSON data from an XML web service in Android
我有一個XML Web服務。 我想解析此XML,並想存儲在單獨的textviews中。 以下是XML內容,並且我已經完成了在String
變量中獲取它的過程。
{
"30_year_rate": 4.25,
"30_year_pi": 196.78,
"30_year_apr": 4.375,
"20_year_rate": 4.375,
"20_year_pi": 250.37,
"20_year_apr": 4.5,
"15_year_rate": 3.75,
"15_year_pi": 290.89,
"15_year_apr": 3.875,
"10_year_rate": 3.625,
"10_year_pi": 397.89,
"10_year_apr": 3.75,
"5_year_arm": 2.75,
"5_year_pi": 163.3,
"5_year_apr": 2.875,
"7_year_arm": 3,
"7_year_pi": 168.64,
"7_year_apr": 3.125,
"3_year_arm": 4,
"3_year_pi": 190.97,
"3_year_apr": 4.125,
"5_year_io_arm": "N/A",
"5_year_io_pi": "N/A",
"5_year_io_apr": "N/A",
"QuoteID": 1449,
"Licensed": "N"
}
如何解析此數據? 我想將其轉換為JSON對象並檢索它,或其他任何合理的方法。
如果要從Web服務獲得的是上面的字符串,則您已經有一個JSON字符串。 要創建可以從中檢索信息的對象,請使用JSONObject
東西。
JSONObject object = new JSONObject(your_string_variable);
double thirtyYearRate = object.getDouble("30_year_rate");
String licensed = object.getString("Licensed");
等等
您可能會(會)遇到一些問題,嘗試從包含字符串的JSON字段中提取一個double
。 即上面的“ N / A”字段。 您可能必須將它們作為字符串拉出,然后嘗試從它們中解析double
,如果解析引發異常,您將知道它是一個字符串。
或者,您可以使用類似於Jackson的東西來研究JSON綁定,該東西顯然可以在Android上運行 。
要解析JSON,可以使用內置的JSONObject org.json或Json-lib(如果您使用的是舊版android)。
要解析XML,請使用XMLPullParser 。 可以在這里找到一個示例: 解析XML數據
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.