2012-10-11 4 views
2

C#의 XMLReader는 전체 XML 문서를 한 번에 메모리에 가져 오지 않으므로 큰 크기의 XML 파일에 매우 유용합니다. Java에는 이와 비슷한 것이 있습니까? 자바도 XMLReader라는 클래스를 가지고 있지만, 똑같은 일을하는 것으로 나타났습니다. 아무도 분명히하십시오.Java는 XMLReader와 동일합니다. C#

감사

답변

2

로드 XML의 두 가지 방법이 있습니다 : XML을 읽고 내용을 분석하는 핸들러를 사용하여 메모리와 SAX 파서에 전체 문서를로드 DOM 문서.

SAX 파서를 살펴보십시오.

1

실제로 Java는 이라는 인터페이스을 가지고 있습니다. 클래스가 아닌 인터페이스이기 때문에 구현되기 전까지 실제로는 을 수행하지 않습니다.을 수행합니다.

그러나 XML의 텍스트를 읽음으로써 트리거 된 이벤트를 사용하여 전체 문서를로드하지 않는 구문 분석 용 SAX 패키지의 일부입니다.

SAX를 시작하거나 Google에서 SAX를 검색하려면 this tutorial을 읽고 싶을 수 있습니다.

Java에는 다른 XML 구문 분석 패키지가 있습니다. DOM은 전체 문서를로드하므로 대용량 파일에는 사용하지 않아야합니다. StAX은 SAX에서 사용하는 푸시 대신 풀 시스템을 기반으로하는 새로운 옵션이지만 비슷하게 전체 문서를로드하지는 않습니다.