当前位置: 代码迷 >> J2SE >> 怎么用jdom解析xml
  详细解决方案

怎么用jdom解析xml

热度:1764   发布时间:2013-02-25 00:00:00.0
如何用jdom解析xml
本帖最后由 wangjiebo 于 2012-11-23 23:22:28 编辑 有一个TESTS.xml
<TESTS>
<TEST>
<主题>老鼠 </>
<内容> 有耳朵</>
</TEST>
<TEST>
<主题>猫 </>
<内容> 有腿</>
</TEST>
</TESTS>

我做了2个按钮,从xml中读取的“主题”的值做按钮的LABLE
我想当我点击主题是老鼠的按钮时候弹出一个窗口,里面写着有耳朵。
点击主题是猫的时候出现的内容是有腿
我用的是jdom,请问有什么方法可以主题和内容的值绑定在一起???

------最佳解决方案--------------------------------------------------------
给你一个例子吧.

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;

public class ReadXML {
public List GetCompanyList(String XML_url){
   try {
    SAXBuilder sb = new SAXBuilder();
    Document doc = sb.build(XML_url);
    Element root = doc.getRootElement();
    List list = root.getChildren();
    ArrayList<CompanyListForm> formList = new ArrayList<CompanyListForm>();
    Iterator iter = list.iterator();
    while (iter.hasNext()) {
     Element e = (Element) iter.next();
     CompanyListForm companyListForm = new CompanyListForm();
     companyListForm.setCompany_name(e.getChildText("company_name"));
     companyListForm.setCompany_email(e.getChildText("company_email"));
     formList.add(companyListForm);
    }
    Iterator iterator = moList.iterator();
    while (iterator.hasNext()) {
     CompanyListForm companyListForm = (CompanyListForm) iterator.next();
     System.out.println("company_name:" + companyListForm.getCompany_name());
     System.out.println("company_email:" + companyListForm.getCompany_email());
    }
    return formList;
   } catch (Exception e) {
    e.printStackTrace();
   }
   return null;
}

public static void main(String[] args) {
   ReadXML readXml = new ReadXML();
   readXml.GetCompanyList("e:\\company_list.xml");
}
}

------其他解决方案--------------------------------------------------------
查找兄弟节点
  相关解决方案