현재 SAX를 사용하여 인터넷에서 데이터를 검색하는 응용 프로그램을 개발 중입니다. 이전에 Google Weather API와 같은 간단한 XML 파일을 구문 분석하는 데 사용했습니다. 그러나 내가 관심있는 웹 사이트는 다음 단계로 파싱을합니다. 페이지가 거대하고 더러워 보입니다. 난 단지 몇 가지 구체적인 라인을 검색해야합니다; 나머지는 나를 위해 유용하지 않습니다.
쓸모없는 줄/태그를 건너 뛸 수 있습니까? 아니면 단계별로 진행해야합니까?SAX 파서를 사용하여 큰 XML 파일 구문 분석 (일부 줄/태그 건너 뛰기)
답변
예, 건너 뛸 수 있습니다. 원하는 태그를 정의하면 태그 값만 가져옵니다.
와 XML에 액세스 할 수 있습니다 생각, 당신의 대답은 나를 오래 저장합니다 코드 줄! – Amine
xml을 구문 분석하기 위해 장면 뒤의 SAX를 사용하는 XPath를 사용해 볼 수 있습니다. 여기서의 단점은 Xpath를 평가할 때마다 XML이 파싱된다는 점입니다. 다음 DOM 파서 SAX parser..SAX 파서보다 훨씬 빠른
응답 해 주셔서 감사합니다. – Amine
당신은 당신이
SAX 구문 분석은 DOM보다 훨씬 빠릅니다. 또한 DOM은 전체 문서를 메모리에 가져와야합니다. –
답장을 보내 주셔서 감사합니다. 정말 도움을 주시면 감사하겠습니다. DOM을 사용하고 출력 결과를 확인하려고합니다! – Amine
예를 그냥 태그를 무시, 그것을 할 수 있습니다 .. 당신이 큰 XML 파일을 구문 분석 할 때 유용 특정 태그를 읽을 수 에 관심이 없습니다. 그러나 당신은 흥미로운 부분을 가져 오는에 대한 구문 분석 XML 문서와 XPath를 만들기위한 TagSoup의 조합을 시도 할 수 있습니다
public startElement(String uri, String localName,
String qName, Attributes attributes) {
if(localName.equals("myInterestingTag") {
// do your thing....
}
}
public void endElement(String uri, String localName, String qName) {
if(localName.equals("myInterestingTag") {
// do your thing....
}
}
public void characters(char[] ch, int start, int length) {
// if parsing myinteresting tag... do some stuff.
}
고마워, 그게 내가 보통하는 방법이야;)! – Amine
은 건너 뛸 SAX를 사용하는 전략에 대해 유사한 질문에 대한 내 대답은/태그를 무시 참조 : 그것은되는 XMLReader에 ContentHandlers 전환 포함
. 건너 뛰고 자하는 XML 문서의 포팅을 읽을 때, 이벤트를 전혀 수행하지 않는 ContentHandler를 교환하면됩니다. 무시할 섹션의 끝 부분에 도달하면 XML 컨텐트를 처리하는 데 사용했던 컨텐트 핸들러로 컨트롤을 다시 전달합니다.
당신의 대답은 확실히 내 목표를 달성하는 데 도움이 될 것입니다!덕분에 많이 - 발가락 – Amine
나는 평형 소화조를 좋아한다. 특정 태그에 대해 규칙을 지정할 수 있습니다. 태그가 발견 된 경우에만 규칙이 실행됩니다.
Digester는 색소폰을 통해 만들어 졌으므로 모든 색소폰 기능과 특정 태그를 선택적으로 구문 분석하는 데 필요한 특수성을 갖추고 있습니다. 또한 해당 태그가 발생할 때 새로운 요소로 푸시 된 스택을 사용하고 요소가 끝날 때 팝업됩니다.
모든 구성 파일을 구문 분석하는 데이 파일을 사용합니다. http://commons.apache.org/digester/
고마워 라자, 나는이 해결책을 들여다 볼 것이다 !! – Amine
- 1. BlackBerry에서 SAX 파서를 사용하여 XML 구문 분석
- 2. 파이썬에서 큰 pseudo-xml 파일 구문 분석
- 3. 자바에서 XML 파일 구문 분석
- 4. 색소폰 파서를 사용하여 XML 구문 분석
- 5. SAX 구문 분석 예외
- 6. SAX 파서를 사용하여 XML을 구문 분석하는 방법
- 7. 웹 서비스에서 Sax 구문 분석
- 8. SAX 구문 분석
- 9. 큰 압축 xml 파일, 파이썬 구문 분석
- 10. 간단한 Android SAX XML 구문 분석 문제
- 11. SAX 구문 분석 중간 문서를 중단 하시겠습니까?
- 12. SAX 구문 분석 중 루트 요소 결정
- 13. DOM Parser 및 SAX 파서를 사용하여 Android XML 구문 분석 차이점
- 14. PHP에서 큰 XML 구문 분석
- 15. XML Serializer가 행 건너 뛰기
- 16. .csv 파일을 구문 분석 할 때 헤더 행 건너 뛰기
- 17. 일부 내용을 건너 뛰고 C#에서 텍스트 파일 구문 분석
- 18. 구문 분석 XML 파일
- 19. WPF wmv/mpg 파일 건너 뛰기 및 건너 뛰기
- 20. "»"문자에 대한 안드로이드 Sax 구문 분석 예외
- 21. SAX/Python을 사용하여 XML 구문 분석 + 유효성 검사 없음
- 22. Sax 파서를 실행 중
- 23. 파일 줄로 건너 뛰기 C#
- 24. Sax 구문 분석 및 인코딩
- 25. xmlreader 건너 뛰기 형제
- 26. 클로저 컴파일러 건너 뛰기 파일
- 27. 구문 분석 된 xml 파일 : 비어있는 경우 만들기를 건너 뛰시겠습니까?
- 28. Perl을 사용하여 XML 파일 구문 분석
- 29. MiniXML을 사용하여 C로 XML 파일 구문 분석
- 30. PowerShell을 사용하여 XML 파일 구문 분석
에서 소화
이체크 아웃 I 확장 VTD-XML 당신이 부지 Thaks SAX보다 훨씬 더 메모리 효율적인 방식으로 랜덤 액세스, 또는 아파치 소화 –