Tag: xml parsing

读取两个具有相同名称Java的XML标记

我有一个用Java读取的XML文件,如下所示: Kun-Jing Lee John Smith 一开始一切都很好,然后就会出现这样的事情 Z. C. Huang J. C. Chen 如您所见, 标记在同一个块中被提及两次,因此,当我从调用该值时,它仅显示第一个。 这是读取XML文件的Java代码: package com.mkyong.seo; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; import org.w3c.dom.NodeList; import org.w3c.dom.Node; import org.w3c.dom.Element; import java.io.File; public class ReadXMLFile { public static void main(String argv[]) { try { File fXmlFile = new File(“/fileaddress/test-1.xml”); DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder dBuilder = […]

Dom解析器和Xerces Parser之间的区别

嘿,任何人都可以告诉我,“Dom解析器”和“Xerces Parser”之间有什么区别。 两者的优点和缺点是什么?

XMLPullParser解析器无法解析“(??????)·”xml标记内部

我正在使用Jsoup解析XMLPullParser (??????) [????]0 BLACK LAGOON -???? · ????- ?01-09? http://fenopy.eu/torrent/+black+lagoon+A+01+09+/OTcyOTA3Mw Wed, 27 Feb 2013 11:00:04 GMT Anime http://fenopy.eu/torrent/+black+lagoon+A+01+09+/OTcyOTA3Mw <![CDATA[ Category: AnimeSize: 542.9 MBRatio: 0 seeds, 3 leechers ]]> 这是我的解析代码 int eventType = -1; while (eventType != XmlPullParser.END_DOCUMENT) { switch (eventType) { // at start of document: START_DOCUMENT case XmlPullParser.START_DOCUMENT: break; // at start of a […]

使用Java从XML中提取数据

我有以下XML代码: Success Success 308 http://delivery.usurv.com?Key=a5018c85-222a-4444-a0ca-b85c42f3757d&ReturnUrl=http%3a%2f%2flocalhost%3a8080%2feveningstar%2fhome 我要做的是提取节点并将它们分配给变量。 因此,例如,我有一个名为FrameHeight的变量, FrameHeight包含值308 。 这是我到目前为止的Java代码: private void processNode(Node node) { NodeList nodeList = node.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node currentNode = nodeList.item(i); if (currentNode.getNodeType() == Node.ELEMENT_NODE) { //calls this method for all the children which is Element LOG.warning("current node name: " + currentNode.getNodeName()); LOG.warning("current […]

使用STaX解析多个XML片段

我希望以下内容可以在StAX中解析, 但是当你到达第二个元素时它会窒息。 因为没有共同的根元素。 (我不太清楚为什么拉解析器会关心这个特殊问题…无论如何…) 我可以伪造根元素,例如番石榴: InputSupplier join = CharStreams.join( newReaderSupplier(“”), newReaderSupplier(new File(“…”)), newReaderSupplier(“”)); XMLInputFactory xif = XMLInputFactory.newInstance(); XMLStreamReader xsr = xif.createXMLStreamReader(join.getInput()); xsr.nextTag(); // Skip the fake root 所以我的问题是:有没有办法避免这种黑客行为? 一些’片段’模式,我可以把解析器放入?

使用SAX进行XML解析| 如何处理特殊字符?

我们有一个JAVA应用程序,它从SAP提取数据,解析它并呈现给用户。 使用JCO连接器拉取数据。 最近我们被抛出一个例外: org.xml.sax.SAXParseException: Character reference “&#00” is an invalid XML character. 因此,我们计划在解析XML之前编写一个新的间接级别,其中替换所有特殊/非法字符。 我的问题是: 是否有任何现有的(开源)实用程序可以替换XML中的非法字符? 或者如果我必须编写这样的实用程序,我应该如何处理它们? 为什么抛出上述exception? 谢谢。

JAXB是否始终需要XSD

http://www.oracle.com/technetwork/articles/javase/index-140168.html#binsch – 本文说“ JAXB要求您要访问的XML文档具有架构 ” 这是一个Hello World示例,使用hello.xsd http://jaxb.java.net/tutorial/section_1_3-Hello-World.html#Hello%20World- 这是一个不使用任何xsd的Hello World示例。 http://www.mkyong.com/java/jaxb-hello-world-example/ 规范是否说JAXB在没有 xsd的情况下也可以工作,如果这是真的那么术语“绑定”的合理程度。 我相信通过绑定模式发生绑定。 Carification将会很有帮助。 谢谢

JAXB解组未知XML内容的子集

我需要unmarshall组未知XML内容的子集,使用该未编组对象,我需要修改一些内容并使用原始XML重新绑定相同的XML内容(子集)。 示例输入XML: Robin SM Active ….. 需要通过将其他XML部分保持相同来单独解组标记。 需要修改标记中的元素并将修改后的XML部分与原始文件绑定,如下所示: 预期输出XML: Robin_123 Senior Member 1 ….. 我的问题: 这个要求的可能解决方案是什么? (除了DOM解析 – 因为XML contnet非常庞大) 在JAXB2.0有没有选择呢? 请提供您的建议。

从Java写入XML文档 – 简单

我知道在stackoverflow上从Java写到XML有很多问题,但它太复杂了。 我觉得我有一个非常简单的问题,我无法弄清楚。 所以我有一个程序需要大量的用户输入,我现在正在创建并附加带有结果的文本文档。 我将在这里发布我的编写器代码: PrintWriter out = null; try { out = new PrintWriter(new BufferedWriter(new FileWriter(“C:/Documents and Settings/blank/My Documents/test/test.txt”, true))); out.println(“”); out.println(“<event title=\""+titleFieldUI+"\""); out.println(" start=\""+monthLongUI+" "+dayLongUI+" "+yearLongUI+" 00:00:00 EST"+"\""); out.println(" isDuration=\"true\""); out.println(" color=\""+sValue+"\""); out.println(" end=\""+monthLong1UI+" "+dayLong1UI+" "+yearLong1UI+" 00:00:00 EST"+"\""); out.println(" "+descriptionUI); out.println(""); out.println("”); out.println(” “); }catch (IOException e) { System.err.println(e); }finally{ if(out != null){ out.close(); […]

StAX XML两个必需标记之间的所有内容

开始学习StAX,使用XMLStreamReader,我遇到了一些问题。 如何将标签之间的所有内容作为文本? 我的意思是,我知道所需标签的名称,当我找到它时,我必须转到关闭标签,我发现它们之间的一切我必须附加一些字符串。 例如,我们有类似的东西 … Some text content and other tags here… Some text content.. … Something here … … … 所以,我需要把我的字符串作为 Some text content.. … Something here 我怎么才能得到它? 也许,我必须在源xml中找到所需块的开始和结束偏移,并在解析后给出子串?