日期:2014-05-17  浏览次数:20697 次

json字符串解析问题
我有一个文本存的是json格式的字符串,类似这样
{"城市代码": [{"省": "北京","市": [{"市名": "北京","编码": "101010100"}]}]}
我用流取出来的时候,发现转换不了json
JSONObject jo = new JSONObject(sb);
,但是我直接
String str1 = "{\"天气\":{\"city\":\"福州\",\"city_en\":\"fuzhou\",\"date_y\":\"2013年5月31日\",\"date\":\"\",\"week\":\"星期五\"}}";
用这个是可以转的,请问是不是流取出来的时候要做什么操作呢,是不是要在引号前面加个反斜杠,如果是的话,求大神提供个方法

------解决方案--------------------
你看看读出来的字符串是那样子吗
------解决方案--------------------
替换的话,这样试试
str = str.replaceAll("\"","\\\"");
------解决方案--------------------
例子
JSONObject obj = new JSONObject("{interests : [{interestKey:Dogs}, {interestKey:Cats}]}");

List<String> list = new ArrayList<String>();
JSONArray array = obj.getJSONArray("interests");
for(int i = 0 ; i < array.length() ; i++){
    list.add(array.getJSONObject(i).getString("interestKey"));
}