Clean Code that Works.

XML 문서 파싱

Java/이론..2007. 10. 7. 10:14
지금 만들고 있는 이미지 검색 프로그램에 올리기 위한 데이터를 XML 파일로 만들었는데..

이것을 파싱해서 사용할려고 하다가 또 무수히 많은 삽질을...;;;

각설하고.. XML 문서를 파싱하는 예를 보도록 하자..

파서는 DOM 파서를 사용했는데 나중에 JDOM이나 SAX 파서로 바뀔수도 있겠다. 까먹지 말자.


DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse("VirusInformation.xml");


DOM 파서를 만들어서 원하는 파일을 파싱 한다.

그 다음에

Node root = document.getDocumentElement();
System.out.print("Here is the document's root node:");
System.out.println(" " + root.getNodeName());
       
System.out.println("Here are its child elements: ");
       
rootNodes = root.getChildNodes();
       
Node vegetableNode = rootNodes.item(1);      

System.out.print(vegetableNode.getNodeName() + " ");
NamedNodeMap vegatables = vegetableNode.getAttributes();
System.out.println(vegatables.item(0));



하위 노드에 엘리먼트명과 속성명을 프린트해볼려고.. 무수한 삽질을.....

도큐먼트로부터 루트 노드를 생성하고 그 노드를 가지고 노드들을 만든다.

노드의 어트리뷰트를 얻을려면 노드에서 getAttributes를 가지고 NamedNodeMap 변수를 만들어서 할당하면

어트리뷰트를 출력 할 수 있다.