上代码。。。有点乱,有时间再整理吧。可以使用。//我靠,怎么排版啊!!
public void parser(String xmlDoc) {
// 创建一个新的字符串
StringReader read = new StringReader(xmlDoc);
// 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
InputSource source = new InputSource(read);
// 创建一个新的SAXBuilder
SAXBuilder sb = new SAXBuilder();
try {
// 通过输入源构造一个Document
Document doc = sb.build(source);
// 取的根元素
Element root = doc.getRootElement();
System.out.println(root.getName());// 输出根元素的名称(测试)
// 得到根元素所有子元素的集合
List jiedian = root.getChildren();
// 获得一个节点
Element et = root.getChild("user");
// 获得XML中的命名空间(XML中未定义可不写)
System.out.println(et.getAttribute("nick").getValue());
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
所解析的文件(加了转移字符\)
<?xml version=\"1.0\" encoding=\"UTF-8\"?><QQHOME code=\"0\"><hello time=\"1330006964\"></hello><user nick=\".JoJo\" uin=\"670454997\" sex=\"1\" money=\"4332\" exp=\"7046\" regti=\"1259050621\" lastloginti=\"1329964372\" randchance=\"16\" lastrandti=\"1313333221\" missionid=\"-4\" missionstep=\"0\" missionflag=\"-4\" lastgetmoneyti=\"1329964372\" lv=\"10\" lvupbonus=\"0\" redvip=\"0\" missionv3=\"1\" hasmsg=\"0\" mana=\"300\" redlv=\"1\" yearvip=\"0\" elfname=\"\"></user></QQHOME>