我有一個大約有60到70個標籤的xml文件。同時調用SAX解析器startElement,endElement,字符過多使用的回調方法,如果其他方式使代碼極其痛苦。有沒有其他方法可以讓我的代碼更具可讀性?解析帶有太多標籤的SAX解析器的XML文件
0
A
回答
0
還有其他的方法,命名爲DOM
,StAx
等。選擇你的靈活的一個。但是,SAX在記憶和時間上更有效率。有關詳細信息,請參閱:http://docs.oracle.com/javase/tutorial/jaxp/index.html
0
正如我所瞭解的,您希望根據SAX剛剛閱讀的內容執行不同的方法。我想不出有辦法做到這一點。在我看來,您正在使用if-else/switch
語句在Handler
方法的startElement,卡住的endElement,人物等
如果你發現你的if-else
語句太複雜,你可以從提取,如果代碼條款以不同的方法,例如:
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if (ELEMENT1.equalsIgnoreCase(qName)) {
createElement1();
} else if (ELEMENT2.equalsIgnoreCase(qName) {
createElement2();
} else {
createDefaultElement();
}
}
0
檢查XMLDog
你可以寫Expressions
然後評估他們直列後避免了痛苦的系列if tests
。額外的好處是它使用流分析器(SAX),並避免了XPath
需要的昂貴的內存分析。
相關問題
- 1. 使用sax解析器解析xml具有不同的標籤
- 2. 使用SAX解析器解析具有多個XML標記的XML文件
- 3. 多級XML SAX解析器
- 4. SAX XML解析器或DOM解析器?
- 5. XML解析器多標籤
- 6. 帶SAX解析器的RSS
- 7. 使用SAX解析器解析大型XML文件(跳過一些行/標籤)
- 8. 使用android sax解析器解析XML
- 9. 使用sax解析器解析XML
- 10. 用SAX解析器解析XML
- 11. 使用SAX解析器解析java中的XML文件
- 12. 使用SAX解析器解析UTF-8 XML文件的問題
- 13. 使用SAX解析器,如何解析java中的xml文件
- 14. SAX解析器:從XML
- 15. SAX解析器XML援助
- 16. SAX解析器和XAPI xml
- 17. XML解析與SAX
- 18. SAX解析器忽略CDATA - html標籤
- 19. 解析多個XML標籤
- 20. 在SAX分析器解析XML
- 21. Perl的XML :: SAX解析
- 22. XML SAX解析Android的
- 23. 解析問題SAX解析器的Android
- 24. 的Android - 解析使用SAX解析器
- 25. 使用Sax解析器,Java處理XML中的空標籤
- 26. 保留XML內容中的HTML標籤SAX解析器Python
- 27. 使用SAX解析器解析嵌套的XML標記可能有重複。 Java
- 28. 使用DOM解析器和SAX解析器進行Android XML解析的區別
- 29. 安卓:SAX解析XML具有相同的標籤
- 30. 用Nokogiri的SAX解析器解析Redis的大XML
我只是想減少每個回調方法中if語句的數量。 – user2220890