Tag: xml parsing

使用vtd-xml解析xml文件

如何在java或C中使用vtd-xml解析如下所示的xml文件? 任何帮助,将不胜感激。 谢谢

如何使用Xpath检索XML树节点之后的节点?

首先,我必须说我发现Xpath是一个非常好的解析器,我认为将它与其他解析器进行比较时非常强大。 给出以下代码: DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance(); domFactory.setNamespaceAware(true); DocumentBuilder builder = domFactory.newDocumentBuilder(); Document doc = builder.parse(“input.xml”); XPath xpath = XPathFactory.newInstance().newXPath(); 如果我想找到第1轮和第1轮的first节点,请点击此处: 1 abd11 0 25 0.31 25 50 0.04 50 75 0.19 75 100 0.46 vvv1133 60 62 1.0 2 eee 0 -25 0.31 -25 -50 0.04 -50 -75 0.19 -75 -100 0.46 cc -60 -62 […]

使用SAX解析器,如何解析具有相同名称标签但在不同元素中的xml文件?

是否可以在SAX解析器中提供路径表达式? 我有一个XML文件,它有几个相同的名称标签,但它们在不同的元素中。 有没有办法区分它们。 这是XML: 335823 Fairfax High School 4195653 Will Turner 4195654 Bruce Paltrow 4195655 Santosh Gowswami 335824 FallsChurch High School 4153 John Singer 4154 Shane Warne 4155 Eddie Diaz 我想根据学校的名称和ID来区分学生的姓名和身份certificate。 谢谢你的回复: 我创建了一个学生pojo,其中包含以下字段:school_id,school_name,student_id和student_name以及getter和setter方法。 这是我的临时解析器实现。 当我解析xml时,我需要将学校名称,id,学生姓名,id的值放在pojo中并返回它。 你能告诉我如何实现堆栈以区分。 这是我的解析器框架:: import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers.DefaultHandler; public class HandleXML extends DefaultHandler { private student info; private boolean school_id […]

Java内存不足exception

我在Tomcat中运行Java Web应用程序。 该应用程序使用Quartz框架定期调度cron作业。 这个cron工作涉及解析4+ MB xml文件,我正在使用JDOM API。 xml文件包含大约3600个要解析的节点,因此要在DB中更新数据,我按顺序执行此操作。 在解析了几乎一半的文件后,我的应用程序抛出了内存不足exception。 堆栈跟踪是: Exception in thread “ContainerBackgroundProcessor[StandardEngine[Catalina]]” java.lang.OutOfMemoryError: Java heap space at java.util.Arrays.copyOfRange(Arrays.java:3210) at java.lang.String.(String.java:216) at java.lang.StringBuffer.toString(StringBuffer.java:585) at org.netbeans.lib.profiler.server.ProfilerRuntimeMemory.traceVMObjectAlloc(ProfilerRuntimeMemory.java:170) at java.lang.Throwable.getStackTraceElement(Native Method) at java.lang.Throwable.getOurStackTrace(Throwable.java:590) at java.lang.Throwable.getStackTrace(Throwable.java:582) at org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:155) at org.apache.juli.logging.DirectJDKLog.error(DirectJDKLog.java:135) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1603) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) at java.lang.Thread.run(Thread.java:619) Exception in thread “*** JFluid Monitor thread ***” java.lang.OutOfMemoryError: Java […]

将xml的一部分解组为一个对象

我试图取消一个xml,这个问题变成了噩梦。 所以我有一个想法,将这个xml的一部分解组为一个对我来说必需的对象。 原始xml: http : //snipurl.com/24qkyi7 现在我需要的xml是: http : //snipurl.com/24qkyyl 我有两个xmls的类和其他相关信息。 如果我手动将此数据http://snipurl.com/24ql04x提供给unmarshall,我将获得StandardError对象。 但我可以直接给原始的xml来获取它的对象。 ps:使用JAXB 原始xml解析的堆栈跟踪: http : //snipurl.com/24qtrnv原始xml类的类文件,我无法解组。 这个http://snipurl.com/24qttn8没有源代码控制 StandardError类: http : //snipurl.com/24rpdld主xml类: http : //snipurl.com/24rpdxu XSD: http : //snipurl.com/24rryfi

使用StAX读取XML字符串

我第一次使用stax来解析XML String。 我找到了一些例子,但无法让我的代码工作。 这是我的代码的最新版本: public class AddressResponseParser { private static final String STATUS = “status”; private static final String ADDRESS_ID = “address_id”; private static final String CIVIC_ADDRESS = “civic_address”; String status = null; String addressId = null; String civicAddress = null; public static AddressResponse parseAddressResponse(String response) { try { byte[] byteArray = response.getBytes(“UTF-8”); ByteArrayInputStream inputStream […]

如何获取具有特定属性值的特定XML元素?

我试图通过获取所有“ ”元素来解析URL中的XML文件,其中参数type_id =“4218”?? XML文档: Football Matches … … … … … … … 这是我的Java代码: DocumentBuilder db = dbf.newDocumentBuilder(); Document doc = db.parse(new URL(“http://cubs.bluesq.com/cubs/cubs.php?action=getpage&thepage=385.xml”).openStream()); doc.getDocumentElement().normalize(); NodeList nodeList = doc.getElementsByTagName(“Type”); System.out.println(“ukupno:”+nodeList.getLength()); if (nodeList != null && nodeList.getLength() > 0) { for (int j = 0; j < nodeList.getLength(); j++) { Element el = (org.w3c.dom.Element) nodeList.item(j); type_id = […]

如何将XML转换为java值对象?

什么样的开源库可用于将XML转换为java值对象? 在.Net中,有一种方法可以使用xml序列化和属性轻松完成此操作。 我想在java中有一些并行。 我知道如何使用DOM或SAX解析器执行此操作,但我想知道是否有更简单的方法。 我有一个预定义的XML格式,看起来像这样。 12345 Hello World! 22/04/2009 Fred 在.Net中,我可以做这样的事情来将我的对象绑定到数据。 using System; using System.Xml.Serialization; namespace FooBarData.Serialization { [XmlRoot(“FOOBAR_DATA”)] public class FooBarData { private int _ID = 0; [XmlElement(“ID”)] public int ID { get { return this._ID; } set { this._ID = value; } } private string _Message = “”; [XmlElement(“MESSAGE”)] public string Message { […]

如何从JDOM获取节点内容

我正在使用import org.jdom在java中编写应用程序。*; 我的XML有效,但有时它包含HTML标记。 例如,像这样: Anatomy & Physiology For more info click here Learn more about the human body. Choose from a variety of Physiology (A&P) designed for complementary therapies.  Online studies options are available. Health & Human Services 所以我的问题是overview.content节点内的 标签。 我希望这段代码能够正常工作: Element overview = sds.getChild(“overview”); Element content = overview.getChild(“content”); System.out.println(content.getText()); 但它返回空白。 如何从overview.content节点返回所有文本(嵌套标签和所有文本)? 谢谢

在android中使用DOM解析XML

嗨,我想根据用户的选择解析XML和显示列表 我的xml看起来像这样 下面是我的代码 try { XMLParser parser = new XMLParser(); Document doc = parser.getDomElement(xml); // getting DOM element NodeList n1 = doc.getElementsByTagName(“company”); // looping through all item nodes for (int i = 0; i < n1.getLength(); i++) { // creating new HashMap Element e = (Element) n1.item(i); System.out.println("name node "+parser.getValue(e, "name")); } 通过这种方式我得到的输出就像 Company ABC […]