Tag: xml parsing

XMLSchema的解决方法不支持maxOccurs大于5000

我的问题是解析一个XSD Schema,它包含maxOccurs大于5000(但不是unbounded )的元素。 这实际上是Xerces(我正在使用的版本2.9.1)或JAXP中的一个已知问题,如下所述: http ://bugs.sun.com/view_bug.do;jsessionid=85335466c2c1fc52f0245d20b2e?bug_id= 4990915 我已经知道,如果我将XSD中的maxOccurs数字从大于5000的数字更改为unbounded一切正常。 遗憾的是,在我的情况下这不是一个选项 (我不能插入XSD文件)。 我的问题是: 有人知道Xerces中有关此问题的其他一些解决方法吗? 要么 有人可以推荐另一个没有此限制的XML解析器吗? 谢谢!

如何通过JAXB xml解析获取特定元素?

我已经使用JAXB来解析XML。如何通过JAXB xml解析来获取特定元素(即子节点),而无需将该元素解析为节点。 ANXXXNNN ANNNXXXXXT BNNXXXT 我已经完成了这样的解组,它运行正常。对于性能,我不希望元素作为节点。还有其他方法吗? Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller(); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setNamespaceAware(true); DocumentBuilder db = dbf.newDocumentBuilder(); Document doc; doc = db.parse(file); NodeList node = (NodeList)doc.getElementsByTagName(“TO”); JAXBElement element = jaxbUnmarshaller.unmarshal(node.item(0),ToType.class); 对象模型就像 @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = “ToType”, propOrder = { “credential” }) public class ToType { @XmlElement(name = “Credential”, required = true) protected CredentialType credential; […]

Java:如何防止EntityResolver中的’systemId’#resolveEntity(String publicId,String systemId)从绝对化到当前工作目录

我想解析以下XML文档来解析其中的所有实体: &title; 我的EntityResolver应该从数据库中获取具有给定系统ID的外部实体,然后执行解析,请参阅下面的插图: private static class MyEntityResolver { public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException { // At this point, systemId is always absolutized to the current working directory, // even though the XML document specified it as relative. // Eg “file:///H:/mydoc.dtd” instead of just “mydoc.dtd” // Why??? How can I prevent this??? […]

从流输入中解析没有根元素的XML片段列表

在Java中使用SAX api解析XML片段列表是否可行而没有来自流输入的根元素? 我尝试解析这样的XML,但得到了一个 org.xml.sax.SAXParseException: The markup in the document following the root element must be well-formed. 甚至在endDocument事件被触发之前。 我不想解决明显但笨拙的解决方案,如“预先添加自定义根元素或使用缓冲片段解析”。 我使用的是Java 1.6的标准SAX API。 如果有人想知道,SAX工厂已经设置了错误(假)。

java xml将节点转换为Element

我知道这次被问过多次,但我仍然无法让它发挥作用。 我将xml字符串转换为Document对象,然后解析它。 这是代码: import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.*; DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder; try { builder = factory.newDocumentBuilder(); Document document = builder.parse( new InputSource( new StringReader( result ) ) ); Node head = document.getFirstChild(); if(head != null) { NodeList airportList = head.getChildNodes(); for(int i=0; i<airportList.getLength(); i++) { Node n = airportList.item(i); Element airportElem […]

在线阅读XML并存储它(使用Java)

我发现并遵循了Stackoverflow(http://stackoverflow.com/questions/2310139/how-to-read-xml-response-from-a-url-in-java)中有关如何从中读取XML文件的示例URL(您可以在我下面粘贴的代码中看到)。 我唯一的麻烦是,现在我得到了读取XML的程序,我该如何将它存储起来呢? 例如,我是否可以将信息保存到项目中内置的XML文件中(如果可能的话,这对我来说是最好的解决方案)? 例如,我在项目中内置了一个空白的XML文件。 该程序运行,从URL读取XML代码,并将其全部存储到预先构建的空白XML文件中。 我可以这样做吗? 如果我对任何事情听起来令人困惑或不清楚,请让我澄清一下我在寻找什么。 这是我的代码,如果你想看看我到目前为止: package xml.parsing.example; import java.io.IOException; import java.net.URL; import java.net.URLConnection; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.xml.sax.SAXException; public class XmlParser { public static void main (String[] args) throws IOException, ParserConfigurationException, SAXException, TransformerException { URL url = […]

使用SimpleXML很容易解决问题。 我做错了什么?

我正在使用Java和SimpleXML 我需要用SimpleXML解析这个XML文件: yutyutyu http://sofzh.miximages.com/java/idMagazine=1&resource=miniature 2 188 204 399 319 http://www.web.com 188 204 399 319 http://www.web.com 我得到了这个例外: 03-22 16:02:35.072:WARN / System.err(1931):org.simpleframework.xml.core.ValueRequiredException:无法满足@ org.simpleframework.xml.ElementList(data = false,empty = true,entry = ,inline = false,name =,required = true,type = void)on field’area’public java.util.ArrayList com.Magazine.Page.areas for class com.Magazine.Page at line 1 杂志有一系列页面,每个页面都有一系列区域,每个区域都有一个动作类,其中包含更多内容。 问题必须在区域数组上,因此它位于Page类中。 @Root (name=”magazine”) public class FullMagazine { @Attribute String title; @Attribute […]

遍历android中的复杂xml文件

我有一个xml文件在这个链接上 http://nchc.dl.sourceforge.net/project/trialxml/options.xml 我已成功下载并解析它并创建了一个动态UI,但我没有使用任何预定义的函数,如getFirstChild() , getNextSibling() ,这使得我的解析器不兼容解析具有大约6-7级菜单的复杂XML文件。 请帮助如何遍历XML文件,并动态创建UI。

使用Child进行XML解析而不是值解析

使用Child进行XML解析而不是值解析 import java.io.File; import java.io.FileInputStream; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathConstants; import javax.xml.xpath.XPathFactory; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; import com.sun.org.apache.xml.internal.dtm.ref.DTMNodeList; public class XPathEvaluator { /* * ServiceGroup serviceGroup = new ServiceGroup(); List * requiredServices = new ArrayList(); List * recommandedServices = new ArrayList(); Service service = new * Service(); */ public void evaluateDocument(File xmlDocument) { try […]

如何用android中的属性值解析xml数据?

我有一个像下面的xml数据 我正在通过使用下面的XMLParser类来解析它 public class XMLParser { // constructor public XMLParser() { } /** * Getting XML from URL making HTTP request * @param url string * */ public String getXmlFromUrl(String url) { String xml = null; try { // defaultHttpClient DefaultHttpClient httpClient = new DefaultHttpClient(); HttpGet httpPost = new HttpGet(url); HttpResponse httpResponse = httpClient.execute(httpPost); HttpEntity […]