dom解析xml
dom 解析 xml文件流
dom xml
1 public class DomParse {
2
3 public List DomParse(String str) {
4
5 List list = new ArrayList();
6 DocumentBuilderFactory domfac = DocumentBuilderFactory.newInstance();
7 try {
8 DocumentBuilder dombuilder = domfac.newDocumentBuilder();
9 // InputStream is = new FileInputStream("bin/library.xml");
10 InputStream is = new ByteArrayInputStream(str.getBytes());
11 Document doc = dombuilder.parse(is);
12 Element root = doc.getDocumentElement();
13 NodeList tasklist = root.getChildNodes();
14 if (tasklist != null) {
15 for (int i = 0; i < tasklist.getLength(); i++) {
16 Node item = tasklist.item(i);
17 if (item.getNodeType() == Node.ELEMENT_NODE) {
18 String bean = item.getAttributes().getNamedItem(
19 "type").getNodeValue();
20 System.out.println(bean);
21
22 Tasklist task = new Tasklist();
23
24 for (Node node = item.getFirstChild(); node != null; node = node
25 .getNextSibling()) {
26
27 if (node.getNodeType() == Node.ELEMENT_NODE) {
28 if (node.getNodeName().equals("activity")) {
29 String activity = node.getFirstChild()
30 .getNodeValue();
31 task.setActivity(activity);
32 System.out.println(activity);
33 }
34 if (node.getNodeName().equals("assignedToRole")) {
35 String assignedToRole = node.getFirstChild()
36 .getNodeValue();
37 task.setActivity(assignedToRole);
38 }
39 if (node.getNodeName().equals("assignedToUser")) {
40 String assignedToUser = node.getFirstChild()
41 .getNodeValue();
42 task.setAssignedToUser(assignedToUser);
43 }
44 if (node.getNodeName().equals("closedBy")) {
45 String closedBy = node.getFirstChild()
46 .getNodeValue();
47 task.setClosedBy(closedBy);
48 }
49 if (node.getNodeName().equals("dueDate")) {
50 String dueDate = node.getFirstChild()
51 .getNodeValue();
52 task.setDueDate(dueDate);
53 }
54 if (node.getNodeName().equals("taskID")) {
55 String taskID = node.getFirstChild()
56 .getNodeValue();
57 task.setTaskID(taskID);
58 }
59 if (node.getNodeName().equals("receivedDate")) {
60 String receivedDate = node.getFirstChild()
61 .getNodeValue();
62 task.setReceivedDate(receivedDate);
63 }
64 if (node.getNodeName().equals("taskStatus")) {
65 String taskStatus = node.getFirstChild()
66 .getNodeValue();
67 task.setTaskStatus(taskStatus);
68 }
69 if (node.getNodeName().equals("subject")) {
70 String subject = node.getFirstChild()
71 .getNodeValue();
72 task.setSubject(subject);
73 }
74 if (node.getNodeName().equals("processName")) {
75 String processName = node.getFirstChild()
76 .getNodeValue();
77 task.setProcessName(processName);
78 }
79 if (node.getNodeName().equals("processInstanceID")) {
80 String processInstanceID = node.getFirstChild()
81 .getNodeValue();
82 task.setProcessInstanceID(processInstanceID);
83 }
84 if (node.getNodeName().equals("processInstanceStatus")) {
85 String processInstanceStatus = node.getFirstChild()
86 .getNodeValue();
87 task.setProcessInstanceStatus(processInstanceStatus);
88 }
89
90 }
91 }
92 list.add(task);
93 }
94 }
95 }
96 } catch (ParserConfigurationException e) {
97 e.printStackTrace();
98 } catch (FileNotFoundException e) {
99 e.printStackTrace();
100 } catch (SAXException e) {
101 e.printStackTrace();
102 } catch (IOException e) {
103 e.printStackTrace();
104 }
105
106 return list;
107 }


浙公网安备 33010602011771号