달력

22025  이전 다음

  • 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
[DOM(Document Object Model) Parser]

특징 : Element를 모두 Tree 구조로 메모리에 넣어 두고 사용
장점 : 메모리에 Tree구조로 정보가 들어있기 때문에 한번 파싱해 두면
         아무때나 얻고 싶은 Element에 대한 정보를 얻을 수 있다.
단점 : 메모리의 소모가 다른 방법보다 많음


[SAX(Simple API for XML) Parser]

특징 : 이벤트 기반의 파서로 문서의 시작과 끝, Element의 시작과 끝, Element의 내용 등
         Element Tag의 이름에 따라 각각을 처리하는 메소드를 두어 파싱함
장점 : 라인by라인으로 파싱하기 때문에 파싱하는데 일정한(적은) 메모리만 소요
단점 : 파싱시 그냥 지나갔던 Element의 정보를 얻고 싶으면 다시 파싱해야함.


[Pull Parser]

특징 : SAX와 같이 이벤트 기반의 파서이지만, SAX와 달리 문서에 대한 모든 파싱을 하지 않고도
         특정 부분까지의 파싱내용을 활용할 수 있음.(parser.next()를 해줘야 함)
장점 : 원하는 부분까지만 파싱할 수 있는 장점.
단점 : SAX의 단점 + SAX보다 약간느림.

출처 : http://www.androidpub.com/ 토미님의 글
Posted by 위너즈
|