解析xml字符串
ï??ä??é??åˆ?å??ï?Œä??é??惊人ã?‚æœ?é??é??ï?Œå,?æ??å??çŸ?ã?‚å?ªåº?è?Œæ??è?›ï?Œç†Ÿè??è?Œç??æ??ã?‚æ??æ?,ä?‹ï?Œåˆ?å?‰ä?‹ã?‚ç??åˆ?ç‹?å?„å…?èº?ï?Œè??åˆ?å…?æµ?å,?ä?‹ã?‚//è??æ?•xml å,?ç??ä??
String xmlsource = rs_arr[3];
ByteArrayInputStream bis = new ByteArrayInputStream(xmlsource.getBytes()); List
lstZaiTaoList = readListXML(bis, "UTF-8");
public static List readListXML(InputStream inputStream,
String inputEncoding) throws Exception {
List lstList = new ArrayList();
ZaiTaoVO vo = null;
// 创å?ºPullè??æ?•
XmlPullParserFactory pullParserFactory =
XmlPullParserFactory.newInstance();
XmlPullParser pullParser = pullParserFactory.newPullParser();
// è??æ?•XML
pullParser.setInput(inputStream, inputEncoding);
// å??å?‹
int eventType = pullParser.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
String nodeName = pullParser.getName();
switch (eventType) {
// æ?‡æ??å??å?‹
case XmlPullParser.START_DOCUMENT:
vo = new ZaiTaoVO();
break;
// 节ç‚?å??å?‹
case XmlPullParser.START_TAG:
if ("xm".equals(nodeName)) {
vo.setXmString(pullParser.nextText());
}
if ("xb".equals(nodeName)) {
vo.setXbString(pullParser.nextText());
}
if("sfzh".equals(nodeName)){
vo.setSfzhString(pullParser.nextText());
}
if("xp".equals(nodeName)){
vo.setXpString(pullParser.nextText());
}
break;
// 节ç‚?ç??æ?Ÿ
case XmlPullParser.END_TAG:
if("Table1".equals(nodeName)){
lstList.add(vo);
}
break;
}
eventType = pullParser.next();
}
return lstList;
}
////////////////////////////////////////////////////////////////////
//è??æ?•xmlæ?‡ä?? 1 åœ?resç›?å??ä?‹å?ºç?‹ xmlæ?‡ä??å,? å?†è??è??æ??çš„xmlæ?‡ä??æ??åœ?è?,ç›?å??ä?‹
// åˆ?å?‚ xmlæ?‡ä??å??peopleã?‚xml æ??æ??ä??æ ?å??å?‚ä?‹
XmlPullParser parser = getResources().getXml(R.xml.people); StringBuffer sb = new StringBuffer();
try {
while (parser.next() != XmlPullParser.END_DOCUMENT) {
String name = parser.getName();
String first = null;
String last = null;
if ((name != null) && name.equals("person")) {
int size = parser.getAttributeCount();
for (int i = 0; i < size; i++) {
String attrName = parser.getAttributeName(i);
String attrValue = parser.getAttributeValue(i);
if ((attrName != null) && attrName.equals("firstname")) {
first = attrValue;
} else if ((attrName != null) && attrName.equals("lastname"))
{
last = attrValue;
}
}
if ((first != null) && (last != null)) {
sb.append(last + ", " + first + "\n");
}
}
}
this.readOutput.setText(sb.toString());
} catch (Exception e) {
Log.e(ReadXMLResourceFile.LOGTAG, e.getMessage(), e);
}
ç?‰ä??ç??ï?Œä??æˆ?å??ï?›äººä??å??ï?Œä??çŸ,é??ã?‚å,?è‹,有情å,?äº?è??ï?Œäººé??æ,
?é??æ??æ??æ??ã?‚èµ,æ??é?„ç??é??è??ç??ï?Œè??æŒ?å??ç?ƒå??ç?ºèˆ?ï?ŸèŠ?自é??é›?æ??自æµ?ï?Œä??ç??ç›?æ??ï?Œä?,å,„é??æ„?ã?‚å,?é??ä?‹è?Œï?Œå,?ä?‹ä?ºå…?ã?‚