본문 바로가기
프로그램/Java

[Java] JDom – SAXBuilder를 이용한 Document 객체 생성

by 로드러너 2013. 11. 15.
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

XML 소스(소켓, 파일, 입력, 등)을 입력 받아서 각 항목에 접근하기 위해서는 먼저 Document 객체를 생성해야 한다. 다음은 다양한 입력 소스로 부터 Document 객체를 생성하는 방법이다.

// 바이트배열에 담김 데이터를 이용해서 XML Document 객체를 생성한다.
byte[] responseBody = null;

if (responseBody != null) {
  SAXBuilder saxBuilder = new SAXBuilder();
  Document doc = saxBuilder.build(new ByteArrayInputStream(new String(responseBody).getBytes()));
 
  root = doc.getRootElement();
  resultMode = root.getChild(“code”).getText();
}

// 스트링에 담긴 데이터를 이용해서 XML Document 객체를 생성한다
String responseBody;

if(!”".equals(responseBody)){
  SAXBuilder saxBuilder = new SAXBuilder();
  Document doc = saxBuilder.build(new ByteArrayInputStream(responseBody.getBytes())); 
}

or

Document doc = new SAXBuilder().build(new StringReader(String str));


// XML 파일을 읽어 들여서 XML Document 객체를 생성한다.
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new File(“test.xml”));

SAXBuilder builder = new SAXBuilder();

Document doc = builder.build(new FileInputStream(“test.xml”));


// 웹서버에 있는 XML을 읽어 들여서 XML Document 객체를 생성한다.
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(java.net.URL(“xml파일 URL”));


// 소켓을 통해서 XML Document 객체를 생성한다.
SAXBuilder builder = new SAXBuilder();
Document doc = sb.build(소켓.getInputStream());