StackOverflow를 통해 찾고 있었지만 최상의 대답을 찾을 수 없습니다. Java에서 XML 파일을 읽어야합니다. 내 XML 파일은 다음과 같다 :`XML 요소의 내부 XML 읽기
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<server>
<server01>
<department>A1</department>
<department>A2</department>
</server01>
<server02>
<department>A1</department>
<department>A2</department>
</server02>
</server>
파일의 나머지 부분을 제외한 <server01>
와 <server02>
사이의 자바 요소에서 읽을 수 possiblity가 있습니까? 아니면 다른 태그를 사용해야합니까?
NodeList serverName = xmlD.getElementsByTagName("department");
serversList = new String[serverName.getLength()];
System.out.println("zasieg: " + serverName.getLength());
for (int temp = 0; temp < serverName.getLength(); temp++) {
Element shareName = null;
shareName = (Element) serverName.item(temp);
serversList[temp] = shareName.getTextContent();
System.out.println(temp + " - " + serversList[temp]);
}
그래서, 다시 부모 노드의 요소를 읽을 수있는 가능성이 : 나는 모든 부서 태그를 읽고 배열에 저장할 수 있어요
NodeList serversNames = xmlD.getDocumentElement().getChildNodes();
for (int i = 0; i < serversNames.getLength(); i++) {
Node node = serversNames.item(i);
if (node instanceof Element) {
Element childElement = (Element) node;
System.out.println("tag name: " + childElement.getTagName());
}
}
: 나는 parentnodes을 읽을 수있는 방법을 방법 발견 만? SERVER01 요소 만?
당신은 당신이의 내용을 읽고 너무 의 내용에 읽지 않은 후 문서 읽기를 중단 할 건가요을? 프로그램에서이 논리를 정의해야한다고 생각합니다. 실제로는 XML 파서의 일부가 아닙니다. –
당신이하려는 일이나 이슈가 무엇인지는 명확하지 않습니다. XPath 또는 그와 동등한 것을 사용할 수 있습니까? 이벤트 중심의 파서를 사용하면 정말로 가치가있는 경우 언제든지 중단 할 수 있습니다. –
xstream을 사용하여 XML로 변환하여 객체 및 객체를 XML로 변환 할 수 있습니다. XML을 객체 및 객체로 XML로 변환하는 가장 쉬운 방법입니다. – Sarma