androidjson解析數組
㈠ android怎樣解析Json並列序列的數組
[["北京市"],["上海市"],["合肥市","蕪湖市","蚌埠市"]] 這是一個JsonArray ,先獲取JsonArray對象,然後再次獲取獲取JsonArray對象:子JsonArray對象=父JsonArray對象.get(index值);最後,獲取子JsonArray對象裡面的數據,子JsonArray對象.get(index值);
㈡ android 解析json二維數組
按javascript的語法存取和解析。你例子中有明顯錯誤,js的數組和對象不分,php也不可能生成這樣的json。
按javascript的語法存取和解析。學會js,按js的規矩辦。
php下可用$a=json_decode()解碼這個串,然後按js的規矩
echo $a[0]['uname'];顯示York
echo $a[0]['tag']['2'];顯示北京
可以用foreach逐層遍歷,.和PHP的數組同樣的。
㈢ 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);
㈣ Android 解析json數組後用map存儲
list<map<String,String>> list = new 。。。。。();
map<String,String> map2;
然後在第二個for循環里
map2 = new HashMap<String,String>();
list.add(map2);
然後都放到map2里map.put("data",list);
取的時候要強轉
list<map<String,String>> list=(list<map<String,String>>)datalist.get(position).get("data");
㈤ Android將伺服器傳來的json解析為數組變數,通過java文件simpleadapter輸出到頁面。
我做了一個代碼如下:
{
ListViewlistview;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listview=(ListView)findViewById(R.id.listview);
Stringtemp="[{"aa":"1","bb":"2"},{"aa":"3","bb":"4"},{"aa":"5","bb":"6"}]";
List<Map<String,Object>>data=getList(temp);
SimpleAdapteradapter=newSimpleAdapter(this,data,R.layout.item,newString[]{"aa","bb"},newint[]{R.id.aa,R.id.bb});
listview.setAdapter(adapter);
}
publicMap<String,Object>getMap(StringjsonString){
JSONObjectjsonObject;
try{
jsonObject=newJSONObject(jsonString);
@SuppressWarnings("unchecked")
Iterator<String>keyIter=jsonObject.keys();
Stringkey;
Objectvalue;
Map<String,Object>valueMap=newHashMap<String,Object>();
while(keyIter.hasNext()){
key=(String)keyIter.next();
value=jsonObject.get(key);
valueMap.put(key,value);
}
returnvalueMap;
}catch(JSONExceptione){
e.printStackTrace();
}
returnnull;
}
publicList<Map<String,Object>>getList(StringjsonString){
List<Map<String,Object>>list=null;
try{
JSONArrayjsonArray=newJSONArray(jsonString);
JSONObjectjsonObject;
list=newArrayList<Map<String,Object>>();
for(inti=0;i<jsonArray.length();i++){
jsonObject=jsonArray.getJSONObject(i);
list.add(getMap(jsonObject.toString()));
}
}catch(Exceptione){
e.printStackTrace();
}
returnlist;
}
}
item的布局文件
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<TextView
android:id="@+id/aa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"/>
<TextView
android:id="@+id/bb"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="100dp"
android:textColor="#f00"
android:textSize="30sp"/>
</LinearLayout>
最後的界面效果:
㈥ android中這樣的JSON數據應該如何解析,
//json我的理解就是一系列鍵值對,只要KEY值對了,對應數據格式也對了,那就可以了!~
JsonObject j = ...//此處是獲取json的方法,自定
boolean b = j.getBoolean("result");//取出「result」對應的值,這里的結果應該
//是"true";
JsonArray ja = j.getJsonArray("asks");//取出「asks」對應的值,因為asks對應的值
//中含有方括弧,所以這是JsonArray型數據,需要取出進一步解析;JsonArray可以與數組
//進行比較理解,我個人是這樣的,供參考
for(int i = 0; i < ja.length(); i++){
JsonArray ja1 = ja.getJsonArray(i);//獲取ja中的第一個元素,因為這個元素
//也是jsonArray,所以可以再進一步解析
double d1 = ja1.getDouble(0);//jsonArray中沒有getFloat()這個方法
//,自行轉型就可以了
double d2 = ja1.getDouble(1);//
} 以上,希望對你有所幫助
㈦ android中gson怎麼解析json數組
首先要導入Gson包;
例如有個penson類:
Gson gson = new Gson();
String json ;
person[] pers = gson. fromJson (json , person[].class);
㈧ android 在伺服器端生成json格式數據,在客戶端怎麼解析
1、生成JSON格式數據,有對應的後台類處理,如果你是做Android開發,後台提供獲取數據的介面
2、客戶端解決:
JSONArrayjsonArr=newJSONArray(json);
for(inti=0;i<jsonArr.length();i++){
JSONObjectjsonObj=jsonArr.getJSONObject(i);
booleanisChild=jsonObj.has("childrenNodes");
AreaBeanbean=newAreaBean(jsonObj.getString("id"),
jsonObj.getString("parentId"),
jsonObj.getString("name"));
mList.add(bean);
if(isChild){
mchildNodesList.add(jsonObj.getString("childrenNodes"));
}else{
mchildNodesList.add(null);
}
}
㈨ android JESON解析數組 在線等
分析:
外層是個數組,數組里的數據是JSON對象。解析順序:整個JSON對象->JSON數組->數組里的JSON對象->JSON對象里的數據。
數組里有兩個包含3個子JSON對象的JSON對象,取得數組後循環取出裡面的對象。
String s =
"{"myData":[{"date":{"weekday_short":"周五"},"high":{"celsius":"29"},"low":{"cel
sius":"23"}},{"date":{"weekday_short":"周六"},"high":{"celsius":"32"},"low":{"ce
lsius":"24"}}]}";
JSONObject json = new JSONObject(s);
JSONArray jArray = json.getJSONArray("myData");
int len =jArray.length();
for(int i=0;i<len;i++)
{
JSONObject sum = jArray.optJSONObject(i);
JSONObject date = sum.getJSONObject("date");
JSONObject high = sum.getJSONObject("high");
JSONObject low = sum.getJSONObject("low");
String weekday_short = date.getString("weekday_short");
String celsius_high = high.getString("celsius");
String celsius_low = low.getString("celsius");
System.out.println("weekday_short:"+weekday_short+" "+"celsius_high:"+celsius_high+" "+"celsius_low:"+celsius_low);
}
忘了加try catch 自己加上去
以上純手打,望採納
㈩ android,想要解析下面的json數據,將id,name,weight分別取出放在不同的數組中 ,怎麼操作。求大神賜教
我的建議是用架包去解析。eg:compile 'com.alibaba:fastjson:1.2.17'
建bean包。裡麵包含City.java和Category.java.
City.java中private in id;private String name;private in weight;set()和get();
Category.java中private int datasCount;private ArrayList<City> datas; set()和get();
Category category=JSON.parseObject(result, BatchBase.class);
mList = category.getDatas();ArrayList mId = new ArrayList<Integer>();
for(Integer m:mList){
mId.add(mList.getId())
}
其他兩個相同。
注意:
具體的細節寫法,我沒寫,所以麻煩你自己微調了。