目前,這是我的XML文件的外觀。還有10個學生,但我認爲你不需要看到那個。使用Java解析XML文件中的嵌套元素
<Student id="11111">
<FirstName>Joe</FirstName>
<LastName>Edwards</LastName>
<Address>
<Street>345 North</Street>
<City>Brea</City>
<State>CA</State>
<Zip>99999</Zip>
<Phone>(714) 444-4444</Phone>
</Address>
<Classes>
<Class crn="5555">
<Name>CIS 100</Name>
<Units>3</Units>
<Grade>A</Grade>
</Class>
<Class crn="7777">
<Name>CIS 111</Name>
<Units>4</Units>
<Grade>B</Grade>
</Class>
</Classes>
</Student>
這是我的代碼爲「提取物」的姓和名,分別。
NodeList studentlist = doc.getElementsByTagName("Student");
for(int i = 0; i < studentlist.getLength(); i++)
{
Node n = studentlist.item(i);
Element element = (Element)n;
String id = element.getAttribute("id");
Student obj = new Student(id);
NodeList slist = n.getChildNodes();
for (int j = 0; j < slist.getLength(); j++)
{
Node selement = slist.item(j);
if (selement.getNodeType() == Node.ELEMENT_NODE)
{
String textval = selement.getTextContent();
if (selement.getNodeName().equals("FirstName"))
{
obj.setFirstname(textval);
}
if (selement.getNodeName().equals("LastName"))
{
obj.setLastname(textval);
}
}
}
students.add(obj);
}
而我的學生類:
public class Student
{
private String id;
private String firstname;
private String lastname;
private Address adr;
private ArrayList<Course> courses;
我的問題是:我怎麼添加「地址」和「類」節點此相同的對象?
關於解析不使用正則表達式的XML的問題。謝謝。 – Sinkingpoint