📄 xmlutil.java
字号:
package com.itpath.examples.voter.util;import com.itpath.examples.voter.*;import java.io.*;import java.util.*;import org.kxml.*;import org.kxml.kdom.*;import org.kxml.io.*;import org.kxml.parser.*;public class XMLUtil{ public static VoteSummary getVoteResults(InputStreamReader insr) throws IOException { /* xml format <vote-example> <votes> <number>100</number> <average>4.5</average> <choices> <choice> <name>Awesome</name> <number>43</number> <value>1</value> </choice> <choice> <name>Great</name> <number>43</number> <value>2</value> </choice> ... </choices> </votes> </vote-example> */ Vector returnVector = new Vector(); XmlParser parser = new XmlParser (insr); Document document = new Document(); document.parse( parser ); //document.write( new XmlWriter( new OutputStreamWriter( System.out) ) ); Element voteExampleElement = document.getElement("vote-example"); Element voteElement = voteExampleElement.getElement("votes"); String numVotes = getTextFromElement(voteElement, "number"); String avgVote = getTextFromElement(voteElement, "average"); Element choicesElement = voteElement.getElement("choices"); int childCount = choicesElement.getChildCount(); Vector vEntries = new Vector(); Element choiceElement = null; for (int i = 0; i < childCount; i++) { if ( choicesElement.getType(i) == Xml.ELEMENT) { choiceElement = choicesElement.getElement(i); String choiceValue = getTextFromElement(choiceElement,"value"); String choiceName = getTextFromElement(choiceElement,"name"); String choiceVotes = getTextFromElement(choiceElement,"number"); Vote vote = new Vote(choiceValue, choiceName, choiceVotes); vEntries.addElement(vote); } } return new VoteSummary( numVotes, avgVote, vEntries); } private static String getTextFromElement(Element elementRoot, String elementName) { String returnText = elementRoot.getElement(elementName).getText(); return returnText; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -