javax.xml.parsersでXMLドキュメントの読み込み

XMLコード

<?xml version="1.0" encoding="UTF-8" ?>
<employees>
  <employee>
    <name>yamada</name>
    <age>21</age>
  </employee>
</employees>

Javaコード

package com.arkgame.itstudy;

import java.io.File;
import java.io.IOException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class XmlSaxSimpleReader extends DefaultHandler {
	public static void main(String[] args) throws IOException, ParserConfigurationException, SAXException {
		SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
		SAXParser saxParser = saxParserFactory.newSAXParser();
		saxParser.parse(new File("C:\\arkgame_demo.xml"), new XmlSaxSimpleReader());
	}

	public void startElement(String uri, String cftName, String startName, Attributes attributes) {
		System.out.println("要素開始: " + startName);
	}

	public void characters(char[] ch, int offset, int length) {
		System.out.println("要素データ:" + new String(ch, offset, length));
	}

	public void endElement(String uri, String cftName, String startName) {
		System.out.println("要素終了:" + startName);
	}

}

結果
要素開始: employees
要素データ:

要素開始: employee
要素データ:

要素開始: name
要素データ:yamada
要素終了:name
要素データ:

要素開始: age
要素データ:21
要素終了:age
要素データ:

要素終了:employee
要素データ:

要素終了:employees

Java

Posted by arkgame