[java] 자바에서 XML을 CSV로 변환하기

이번에는 자바를 사용하여 XML 파일을 CSV 형식으로 변환하는 방법에 대해 알아보겠습니다. XML 파일은 계층적인 구조를 가지고 있고, CSV 파일은 표 형식으로 데이터를 저장하는데 사용됩니다. 따라서 XML의 계층적인 구조를 펼쳐서 CSV 형식으로 저장하는 과정이 필요합니다.

1. XML 파일 읽기

먼저 Java에서 XML 파일을 읽기 위해 DOM이나 SAX와 같은 XML 파서를 사용할 수 있습니다. 여기서는 DOM 방식으로 예제를 작성하도록 하겠습니다.

// XML 파일 읽기
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(new File("input.xml"));

2. XML 데이터 추출 및 CSV로 변환

XML 파일을 성공적으로 읽었다면, 이제 필요한 데이터를 추출하고 CSV 형식으로 변환해야 합니다. Java에서는 DOM을 사용하여 XML의 데이터를 추출할 수 있습니다. 그 후에 Java에서 CSV 파일로 쓰는 방법은 OpenCSV와 같은 라이브러리를 사용할 수 있습니다.

// XML 데이터 추출 및 CSV로 변환
NodeList nodeList = doc.getElementsByTagName("item");

// CSV로 데이터 쓰기
CSVWriter writer = new CSVWriter(new FileWriter("output.csv"));
for (int i = 0; i < nodeList.getLength(); i++) {
    Element element = (Element) nodeList.item(i);
    String[] data = { element.getAttribute("attribute1"), element.getAttribute("attribute2") };
    writer.writeNext(data);
}
writer.close();

요약

이제 자바를 사용하여 XML 파일을 읽고, 필요한 데이터를 추출하여 CSV 파일로 변환하는 과정에 대해 알아보았습니다. XML 파싱과 CSV 라이브러리의 사용법을 익힌 후, 원하는 형식으로 데이터를 변환하여 활용할 수 있을 것입니다.