위의 네 가지 유형 (SAXPaser, XPath, DOM, XMLPullParse)의 차이점과 각 항목을 언제 사용해야하는지 알고 싶습니다.차이점 : SAX 파서, XPath, DOM, XMLPullParser
답변
SAX 구문 분석은, DOM보다 구현 다음에이 둘 사이의 차이를 볼 수있는 가장 좋은 하나입니다
노드가 트리 구조의 형태에
DOM 메모리 : 그것은 더 많은 메모리를 차지 , DOM은 작은 XML 문서의 경우에만 사용됩니다. 런타임시 느림 객체로 저장 됨 프로그래밍 방식으로 구현하기 쉽습니다. 탐색 용이성 및 사용법. 이벤트 의
SAX
순서는 큰 문서를 선호하는 메모리를 사용하지 않습니다. 위에서 언급 한 점 때문에 런타임이 빠릅니다. 개체가 생성됩니다.당신이 그들을 이벤트를 발생 및 방출하기 때문에 당신이 SAX 파서를 사용합니다 후 매우 큰 파일이있는 경우가 순차적으로 문서 그래서
를 처리로 SAX 뒤로 탐색에서 객체 를 만들기위한 코드를 작성해야하는 것은 가능하지 않다, 아무것도 메모리에 저장되고 SAX 파서를 사용하면 무작위 방식으로 요소에 액세스 할 수 없습니다. , Dom은 메모리에 전체 파일/문서를 보관하므로 xml 파일의 모든 부분에 액세스 할 수 있습니다.
이 article을 확인하고 요약을 읽고 원하는 것을 얻을 수 있습니다. 또한
이 link 다른 XML 파서의 성능을 볼 수 확인
링크 아래에서 확인하시기 바랍니다 ...
http://steveliles.github.com/comparing_methods_of_xml_parsing_in_android.html
http://xjaphx.wordpress.com/2011/11/01/android-xml-adventure-compare-xml-parsers/
http://www.ibm.com/developerworks/opensource/library/x-android/index.html
http://www.developer.com/ws/android/development-tools/Android-XML-Parser-Performance-3824221-2.htm
http://www.geekinterview.com/question_details/12797
(위 조항에 따라)
SAX와 DOM은 모두 XML 문서를 구문 분석하는 데 사용됩니다. 둘 다 장점과 단점을 가지고 있으며, 우리의 프로그램은 상황에 따라 사용할 수 있습니다
SAX :
- 않아요 메모리에 XML을 저장 노드에 의해 노드
- 우리는 삽입하거나 삭제하지 못할 구문 분석 횡단 아래로 노드
- 최고
DOM
- 상점은
- 을 처리하기 전에 메모리에 전체 XML 문서는 어떤 방향으로 더 많은 메모리를
- 우리는 삽입하거나 삭제할 수있는 노드
- 트래버스을 차지합니다.
노드를 찾아서 삽입하거나 삭제해야 할 필요가없는 경우 SAX 자체와 함께 DOM을 사용할 수 있으며 더 많은 메모리가 제공됩니다.
는 DOM
노드가 트리 구조의 형태에 는 메모리 : 그것은 더 많은 메모리를 차지, DOM은 preffered있다 작은 XML 문서의 경우. 전체 XML 문서를 메모리에 저장합니다. 런타임시 느림 객체로 저장 됨 프로그래밍 방식으로 구현하기 쉽습니다. nt 탐색 및 사용의 용이성, 어느 방향으로나 이동할 수 있습니다. 노드를 삽입하거나 삭제할 수 있습니다.
SAX : 당신이 이벤트 그것은 메모리에 XML 빠른을 처리하기 전에 큰 documents.Doesn't 저장소 선호 메모리를 사용하지 않습니다의
시퀀스 (XML을 변경하지) XML을 액세스 할 때 사용 위에서 언급 한 점 때문에 런타임에. 개체가 생성됩니다. XPath는 유용 경우에만 필요가 순차적으로 바닥 를 가로 지르는 우리는
가 XPATH 노드를 삽입하거나 삭제할 수 없습니다에 문서, 정상 처리로 SAX 뒤로 탐색에서 객체 를 만들기위한 코드를 작성할 필요가 불가능합니다 그들을 찾을 수 당신이 알고있는 XML 문서에서 값의 커플 (당신이 data./root/item/challange/text의 경로를 알고)
는 XMLPullParser은 : 빠른 및 DOM
적은 메모리를 필요로출처 : http://www.time2ask.com/ http://www.time2ask.com/Android/The-difference-among-SAX-ParserXPathDOMXMLPullParser/_2361836
- 1. 안드로이드 : DOM 대 SAX 대 XMLPullParser 파싱?
- 2. SAX xml 파서 또는 DOM 파서?
- 3. Xerces jar가 DOM 파서 또는 SAX 파서입니다.
- 4. XMLReader는 SAX 파서, DOM 파서 또는 어느 것입니까?
- 5. dom4j SaxReader는 어떤 XML 파서 API를 사용합니까? SAX 또는 DOM?
- 6. SAX 파서 대 XMLPull 파서
- 7. 경량 C++ SAX XML 파서
- 8. SAX 파서 속성 얻기
- 9. Android SAX 파서 오류
- 10. SAX RSS 피드 파서
- 11. SAX 파서 문제 NullPointer
- 12. SAX 파서 예외
- 13. 인터럽트 Nokogiri SAX 파서?
- 14. 읽기 XML - SAX 파서
- 15. C#의 고급 SAX 파서
- 16. SAX 파서 및 XAPI xml
- 17. Java SAX 파서 진행 모니터링
- 18. DTD를 SAX 파서 (Java)에로드
- 19. Android : SAX 파서 진행 모니터링
- 20. android, sax 파서 중복 오류
- 21. gmaven-plugin SAX 파서 오류
- 22. Java - XHTML 문서의 SAX 파서
- 23. 안드로이드의 DOM 파서
- 24. DOM 파서 Foreach
- 25. PHP HTML DOM 파서
- 26. java의 xml dom 파서?
- 27. 자바 DOM 파서 XML
- 28. xpath dom preg_match
- 29. DOM xpath 따옴표가 깨져
- 30. DOM XPath 쿼리 도움말
내 apdated 대답을 참조하십시오! 희망이 당신을 도울 것입니다. –