我有一个类的源代码,它已写在Java 1.6上,并使用XPath从InputStream获取XML,并在XML文档中做出一些特定的更改。现在我必须让这个类与Java 1.4兼容。 Netbeans突出显示XPath类“javax.xml.xpath。*”的导入行。在Java 1.4中,我可以使用XPath的哪些替代方法从InputStream获取NodeList?用于java 1.4的XPath替代方案
回答
包括你的评论在内的你的问题包含了矛盾。 XPath库没有内置到JDK 1.4中,它们是@since 1.5,尽管它们在Web服务包(JAX-WS?)的JAXP部分中单独提供了一段时间。
您将不得不从外部包中添加或使用JAXP,或者直接使用Apache Xalan。
我不需要直接使用XPath。我需要从XML中获取NodeList,而不是将某些节点复制到新的Document,修改新Document中的某些节点并重命名修改后的节点,而不是返回新的XML。 现在我正在尝试使用 DocumentBuilderFactory.newInstance()。newDocumentBuilder()。parse(inputSource) instead xpath.evaluate(expression,inputSource,XPathConstants.NODESET) – Leonid
当你说“我不需要使用”时,你的意思是“我需要使用”或“我不需要使用”? –
@Leonid你的评论与我的回答有什么关系?有什么需要澄清的吗?那么如何使用DocumentBuilder.parse()构成XPath呢? – EJP
- 1. System.Xml.Linq的替代方案与Xpath匹配
- 2. Java applets的替代方案
- 3. Java的tinybutstrong替代方案
- 4. Java GUI替代方案
- 5. 用于PHP的mysql_real_escape_string的替代方案
- 6. 用于MAC的SAS替代方案
- 7. 用于Cocos2d 3.0的AppController替代方案
- 8. 适用于Android的MKOverlayView替代方案
- 9. 用于sql server的greensql替代方案
- 10. 用于ODBC的PHP bind_param替代方案?
- 11. 用于WPF的PasswordBox替代方案
- 12. 适用于Android的MailCore替代方案
- 13. 用于C++的ORG替代方案
- 14. 用于php的mysqli_stmt_get_result替代方案5.2.6
- 15. 用于WF4的WorkflowServiceHost替代方案?
- 16. 用于iPad的iPhone groupTableViewBackgroundColor替代方案
- 17. 用于解决Java中的DeadLock的替代方案
- 18. Java应用服务器替代方案
- 19. 用于Java的Python计数器替代方案
- 20. 替代方案deleteOnExit
- 21. Windows Workflow Foundation的Java替代方案
- 22. Java中throwingMerger的替代方案8
- 23. Java中FontMetrics的替代方案
- 24. Java反射的更快替代方案
- 25. Java中hoptoad的替代方案
- 26. Java 1.6的FileOutputStream替代方案
- 27. 带有HttpURLConnection的Java cURL替代方案
- 28. openSSL的替代方案
- 29. Java.sql.time的替代方案
- 30. Android PreferenceScreen的替代方案
到这里看看: [解析JDK1.4中使用XPath XML文件] [1] [1]:http://stackoverflow.com/questions/5094116/parsing- xml-file-using-xpath-in-jdk1-4 – sfat
如果可能的话,我需要使用内置库,而不需要任何外部类。 – Leonid
java.xml.xpath自1.5开始实施...所以没有其他解决方案 – sfat