目前共有2篇帖子。 內容轉換:不轉換▼
 
點擊 回復
564 1
Android獲取JSON字符串並判斷是否為空字符串(適用於PHP中從XML轉換的JSON對象)
一派護法 十九級
1樓 發表于:2015-5-1 10:45
XML空節點:<string />  會被php的json_encode轉換為string:{}
XML帶文本節點的標籤:<string>something</string> 會被php的json_encode轉換為string:"something"
所以在讀取時需要在java中判斷

public static String getJSONString(JSONObject obj, String keyName) {
        try {
            obj.getJSONObject(keyName);
            // If succeeded, it is KEYNAME:{} and should actually be an empty string
            return "";
        } catch (JSONException e) {
            // If failed, it is a nonempty string (KEYNAME:"XXX")
            try {
                String keyString = obj.getString(keyName);
                return keyString;
            } catch (JSONException e1) {
                // If failed again, it is of other data types.
                return "";
            }
        }
    }
一派護法 十九級
2樓 發表于:2015-5-1 10:47
使用案例(把該函數放到App靜態類中)
try {
            JSONObject result = new JSONObject(network.result);
            JSONArray bars = result.getJSONArray("bar");
            barList.clear();
            barIDs.clear();
            for (int i = 0; i < bars.length(); i++) {
                JSONObject bar = bars.getJSONObject(i);
                String details = String.format(App.res.getString(R.string.bar_details), bar.getString("creator"));
                
                HashMap<String, Object> map = new HashMap<String, Object>();
                map.put("PostTitle", bar.getString("name"));
                map.put("PostContent", App.getJSONString(bar,"shortDescription"));
                map.put("PostDetails", details);
                
                barList.add(map);
                barIDs.add(bar.getInt("ID"));
            }
            adapter.notifyDataSetChanged();
            ((ListView)findViewById(R.id.listView1)).setSelection(0);
            displayed = true;
        } catch (JSONException e1) {
            App.alert("JSONException");
            e1.printStackTrace();
        }

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
(快捷鍵:Ctrl+Enter)
 

本帖信息

點擊數:564 回複數:1
評論數: ?
作者:巨大八爪鱼
最後回復:巨大八爪鱼
最後回復時間:2015-5-1 10:47
 
©2010-2024 Arslanbar Ver2.0
除非另有聲明,本站採用共享創意姓名標示-相同方式分享 3.0 Unported許可協議進行許可。