xml解析方式和优缺点

xml解析方式和优缺点解析Xml文件的三种方式及其特点1 class MyDefaultHander extends DefaultHandler{ 2 private List<Student> list; 3 private Student studen

解析Xml文件的三种方式及其特点   
复制代码   1 class MyDefaultHander extends DefaultHandler{ 2 private List<Student> list; 3 private Student student; 4 5 @Override 6 public void startDocument() throws SAXException { 7 super.startDocument(); 8 list=new ArrayList<>(); 9 } 10 11 @Override 12 public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { 13 super.startElement(uri, localName, qName, attributes); 14 if(qName.equals(“student”)){ 15 student=new Student(); 16 17 } 18 preTag=qName; 19 } 20 21 @Override 22 public void endElement(String uri, String localName, String qName) throws SAXException { 23 if(qName.equals(“student”)){ 24 list.add(student); 25 } 26 preTag=null; 27 } 28 29 @Override 30 public void characters(char[] ch, int start, int length) throws SAXException { 31 if(preTag!=null){ 32 if(preTag.equals(“id”)){ 33 student.setId(Integer.parseInt(new String(ch,start,length))); 34 }else if(preTag.equals(“name”)){ 35 student.setName(new String(ch,start,length)); 36 }else if(preTag.equals(“age”)){ 37 student.setAge(Integer.parseInt(new String(ch,start,length))); 38 } 39 } 40 } 41 public List<Student> getStudents(){ 42 return list; 43 } 44 } 45 public List<Student> sax_parser(){ 46 List<Student> list=null; 47 try { 48 SAXParser parser= SAXParserFactory.newInstance().newSAXParser(); 49 InputStream is= getAssets().open(“student.xml”); 50 MyDefaultHander hander=new MyDefaultHander(); 51 parser.parse(is,hander); 52 list= hander.getStudents(); 53 } catch (ParserConfigurationException e) { 54 e.printStackTrace(); 55 } catch (SAXException e) { 56 e.printStackTrace(); 57 } catch (IOException e) { 58 e.printStackTrace(); 59 } 60 return list; 61 }
复制代码

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/82235.html

(0)
上一篇 2024年 7月 28日
下一篇 2024年 7月 28日

相关推荐

关注微信