[英]JSON Parsing in Android for Strings Without Label
嘗試解析此JSON時遇到問題。
{
"bakso-roso-n'deso__-6.19_106.77":
{"Latitude":"-6.185488","Longitude":"106.77366","Distance":"90.89210930799594"},
"print-point-duri-kepa__-6.19_106.77":
{"Latitude":"-6.18599544813468","Longitude":"106.772603988647","Distance":"118.9849339548274"},
"apartment-menara-kebun-jeruk__-6.19_106.78":
{"Latitude":"-6.18530376709007","Longitude":"106.775222279179","Distance":"247.8816947606767"},
"ranch-market---pesanggrahan__-6.19_106.77":
{"Latitude":"-6.18761306472002","Longitude":"106.77343661177","Distance":"294.4255786871916"}
}
問題是如何獲取“ bakso-roso-n'deso __- 6.19_106.77”作為字符串。 它沒有任何標簽。
謝謝。
現在處理Json的常規方法是這樣的:
String jstring = "{\"menu\": {\"id\": \"file\", \"value\": \"File\",\"popup\": {\"menuitem\": [{\"value\": \"New\", \"onclick\": \"CreateNewDoc()\"},{\"value\": \"Open\", \"onclick\": \"OpenDoc()\"},{\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}]}}}";
try
{
jObject = new JSONObject(jstring);
對於這種json,我該怎么做? jstring應該是什么?
基本上我想將這些json字符串轉換成一些字典。
請檢查此字符串,這不是有效的json字符串。
String jstring = "{\"menu\": {\"id\": \"file\", \"value\": \"File\",\"popup\": {\"menuitem\": [{\"value\": \"New\", \"onclick\": \"CreateNewDoc()\"},{\"value\": \"Open\", \"onclick\": \"OpenDoc()\"},{\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}]}}}";
檢查json是否有效http://jsonlint.com/
實際上,您的"bakso-roso-n'deso__-6.19_106.77"
本身就是標簽(鍵?)。
JSONObject jsonObject = new JSONObject(YOUR_RESPONSE_STRING);
Iterator<String> myIter = jsonObject.keys();
while(myIter.hasNext()){
//here you can get all keys
}
我認為您可以使用jObject.keys()獲得鍵上的迭代器;
根據您的代碼....
String jstring = "{\"menu\": {\"id\": \"file\", \"value\": \"File\",\"popup\": {\"menuitem\": [{\"value\": \"New\", \"onclick\": \"CreateNewDoc()\"},{\"value\": \"Open\", \"onclick\": \"OpenDoc()\"},{\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}]}}}";
try
{
jObject = new JSONObject(jstring);
Map<String,String> map = new HashMap<String,String>();
Iterator iter = jObject.keys();
while(iter.hasNext()){
String key = (String)iter.next();
String value = menu.getString(key);
map.put(key,value);
}
} catch(exception e){}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.