Pages

2014년 3월 28일 금요일

[JAVA] XML 파일 파싱

XML 파일 파싱을 위해 예제 파일이 필요하다.

아래와 같이 test.xml 파일 작성

[ test.xml ]


1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="utf-8"?>
<RESOURCE_FILELIST>
    <FILE_LIST>
        <FILE>file1.txt</FILE>
        <FILE>file2.txt</FILE>
        <FILE>file3.txt</FILE>
        <FILE>file4.txt</FILE>
    </FILE_LIST>
    <HVALUE>85e4b37328f95d91b6ec85fe90d791708f9731b0</HVALUE>
</RESOURCE_FILELIST>


[ XML 파일 파싱 JAVA 소스 ]


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
String targetDir = "/temp/test.xml";
File file = new File(targetDir);
/****************** XML 파일 파싱 START ******************/
DocumentBuilderFactory docBuildFact = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuild = docBuildFact.newDocumentBuilder();
Document doc = docBuild.parse(file);
doc.getDocumentElement().normalize();
// FILE_LIST엘리먼트 리스트
NodeList fileList = doc.getElementsByTagName("FILE_LIST");
for (int i = 0; i < fileList.getLength(); i++) {
    Node fileListNode = fileList.item(i);
    if(fileListNode.getNodeType() == Node.ELEMENT_NODE){
        // FILE_LIST엘리먼트
        Element fileListElmnt = (Element) fileListNode;
        // FILE 태그
        NodeList fileNameList= fileListElmnt.getElementsByTagName("FILE");
        for(int j = 0; j < fileNameList.getLength(); j++){
            Element fileElmnt = (Element) fileNameList.item(j);
            Node fileName = fileElmnt.getFirstChild();
        }
    }
}
// HVALUE엘리먼트 리스트
NodeList hvalue = doc.getElementsByTagName("HVALUE");
Element hvalueElmnt = (Element) hvalue.item(0);
Node hvalueNode = hvalueElmnt.getFirstChild();
/****************** XML 파일 파싱 END ******************/

로깅을 해보면 XML 파일을 파싱해서 읽어 올 수 있다.

댓글 없음:

댓글 쓰기