2016-06-01 2 views
1

XML 문서를 파싱하는 것이 처음입니다.XML 태그 (Element)에 SAX 파서를 사용하여 하위 태그가 있는지 여부를 식별하는 방법은 무엇입니까?

XML 문서를 구문 분석 중이므로 XML 파일을 기반으로 자체 JSON을 만들고 싶습니다. XML 태그에 하위 태그가 있는지 여부를 확인하려는 이유가 무엇입니까?

는 DefaultHandler 클래스를 확장하여 의 startElement()의 ContentHandler 의 방법을 오버라이드하고있다. 이처럼

코드 : 내가 잘못거야 경우

@Override 
public void startElement(String uri, String localName,String qName,Attributes attributes){ 
    if(qName has a child){ 
     //perform 1st task 
    } else { 
     //perform 2nd task 
    } 
} 

나이 작업을하고 안내 도와주세요?

답변

0

문서가 작 으면 돔 구문 분석기를 사용하면 작업이 간단 해집니다.

SAX 파서를 사용해야하는 경우 "endElement"메서드도 무시해야합니다. 그런 다음 동일한 요소의 시작과 끝 요소 사이에서 모든 startElement 이벤트는 자식 요소와 관련됩니다.

+0

내 문서가 크기 때문에 SAX 파서를 사용하기로 결정했습니다. 좋아,하지만 태그가 아이인지 아닌지를 어떻게 식별 할 수 있습니까? startElement 및 endElement 메서드는 각 Element에 대해 매번 호출하기 때문에? – ketan

+0

@ ketan - SAX를 사용하면 부모/자식 관계를 찾으려는 시도와 같이 많은 쓸데없는 작업을해야합니다 ... 색소폰 파싱에 지름길이 없습니다. xml 파일의 크기는 얼마입니까? –

+0

이 작업은 SAX 파서를 사용하여 수행하고자합니다. becoz DOM은 대용량 XML 파일의 경우에 적합합니다. SAX에서 부모 - 자식 관계를 식별 할 수있는 방법이 있습니까? pls이 솔루션을 제공합니다 – ketan