ArrayList arrayList = [{a=1,b=2},{a=3,b=4},{a=5,b=6},{a=7,b=8}];
String str = arrayList.toString;
现在又想把String str 解析成list,然后取出一个个的map,在解析map。
String str = arrayList.toString;
现在又想把String str 解析成list,然后取出一个个的map,在解析map。
正确的格式应该去掉两边的引号:[{a=1,b=2},{a=3,b=4},{a=5,b=6}],这代表一个Array,
另外,a=1这种格式也不是有效的JSON格式吧。
一般处理json的包肯定都支持
正确的格式应该去掉两边的引号:[{a=1,b=2},{a=3,b=4},{a=5,b=6}],这代表一个Array,
另外,a=1这种格式也不是有效的JSON格式吧。
解决了 ==!哈哈 不是json了。看楼下我发的解决代码,还是谢谢您的回复
List lists =new ArrayList();
if (str != null) { String s = str.replaceAll("\\[([^\\]]*)\\]", "$1");
String[] arr = s.replace(" ", "").split("},");
for(String temp : arr){
temp=temp.replaceAll("\\[", "")
.replaceAll("\\]", "")
.replaceAll("\\{", "")
.replaceAll("\\}", "");
HashMap map=new HashMap();
String [] sb=temp.replace(" ", "").split("\\,");
for(int a=0;a<sb.length;a++){
map.put(sb[a].split("\\=")[0], sb[a].split("\\=")[1]);
}
lists.add(map);
}
// lists = java.util.Arrays.asList(arr);
}
return lists;
}