java字符串解析与map集合的遍历
2015-11-03 09:50
447 查看
package traversemap; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; public class TraverseMap { public static Map<String, String> transformXmlToMap(String xml) { Map<String, String> map = new HashMap<String, String>(); try { String[] tokens = xml.trim().substring(5, xml.trim().length() - 3) .split("\"");//注意是以引号来切分字符串 \是转义字符 System.out.println("this is blong to transformxmltomap function 1"); for(int i=0;i<tokens.length-1;i++){ System.out.println("分词后第"+i+"个元素"); System.out.println(tokens[i]); } String tokens2=xml.trim().substring(5, xml.trim().length() - 3);//减1意味着最后一个 再减2去掉了"/>" 索引5开始去掉了"<row " System.out.println("this is blong to transformxmltomap function 2"); System.out.println("tokens2"+tokens2); for (int i = 0; i < tokens.length - 1; i += 2) { String key = tokens[i].trim();//去除字符首尾的空格 System.out.print("key:"+key+"---");//打印发现key有带一个等号的 String val = tokens[i + 1]; System.out.println("value:"+val); map.put(key.substring(0, key.length() - 1), val);//key.length() - 1)把key中最后一个字符给去掉 最后一个字符是"=" } } catch (StringIndexOutOfBoundsException e) { System.err.println(xml); } return map; } public static void main(String[] args) { // TODO Auto-generated method stub String ss=" <row Id=\"1\" PostId=\"7\" Score=\"2\" Text=\"Just ask @Robert how annoying this can be...\" CreationDate=\"2010-06-30T19:29:03.500\" UserId=\"17\" />"; Map<String, String> parsed=transformXmlToMap(ss); System.out.println(" 遍历map "); Iterator<Entry<String, String>> entries = parsed.entrySet().iterator(); while (entries.hasNext()) { Map.Entry entry = (Map.Entry) entries.next(); String key = (String)entry.getKey(); String value = (String)entry.getValue(); System.out.println("Key = " + key + ", Value = " + value); } } }
相关文章推荐
- java.io.*与装饰者模式
- spring的jdbc操作
- java.util.ServiceLoader的用法
- 从”JAVA“而终 5:java的运算符
- [leetcode] Subsets
- java程序内存体现
- 【Java】装饰器模式
- struts2 action 页面跳转,有两个跳转类型是亲试过
- Java SE复习笔记64
- 总结1:: springweb项目基本包结构/eclipse编辑器
- Java SE复习笔记63
- jdbcType与javaType的对应关系
- jdbcType与javaType的对应关系
- 详解Java GC的工作原理+Minor GC、FullGC
- SpringMVC小案例搭建
- Java 泛型中? super T和? extends T的区别
- 从”JAVA“而终 3 :配置java运行环境以及Myeclipse的安装
- Java 并发包中的读写锁及其实现分析
- Spring中的Resource接口
- Java SE复习笔记62