import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

import cn.itcast.domain.Person;
/**
* 采用DOM完成XML内容的解析
*/
public class DOMPersonService {

public static List<Person> getPersons(InputStream inputStream) throws Exception{
List<Person> persons = new ArrayList<Person>();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(inputStream);
Element element = document.getDocumentElement();
NodeList perosnNodes = element.getElementsByTagName("person");
for(int i=0 ; i < perosnNodes.getLength() ; i++){
Element personElement = (Element) perosnNodes.item(i);
Person person = new Person();
int id = new Integer(personElement.getAttribute("id"));
person.setId(id);
NodeList childNodes = personElement.getChildNodes();
for(int y = 0 ; y < childNodes.getLength() ; y++){
if(childNodes.item(y).getNodeType()==Node.ELEMENT_NODE){
if("name".equals(childNodes.item(y).getNodeName())){
String name = childNodes.item(y).getFirstChild().getNodeValue();
person.setName(name);
}else if("age".equals(childNodes.item(y).getNodeName())){
String age = childNodes.item(y).getFirstChild().getNodeValue();
person.setAge(new Short(age));
}
}
}
persons.add(person);
}
return persons;
}
}

更多相关文章

  1. 屏幕切换,保存内容
  2. TextView属性android:ellipsize实现跑马灯效果,TextView内容过长
  3. textview中自动换行显示文本内容
  4. Android 获取未读短信同时,一并获取该短信内容的方法
  5. Android EditText属性介绍及监听内容变化
  6. Android防止内容溢出
  7. android文本内容自动朗读实例教程
  8. Android 4.0 Launcher2源码分析——Laucher界面元素分解(主布局文

随机推荐

  1. Android一个ListView列表之中插入两种不
  2. Android Broadcast Receiver 简单例子
  3. ionic3-使用cordova打包android时报错
  4. android的SparseArray
  5. android响应事件的三种方式
  6. android SD卡的热插拔实现,及调试
  7. Android应用程序键盘(Keyboard)消息处理机
  8. 【Android】使用Binder池减少Service进程
  9. 如何让android的屏幕保持常亮
  10. Android创建XML文档