String在XML中分配的字符串操作

时间:2013-10-09 16:14:44

标签: java xml regex

我在Java代码中有一个字符串变量,由下面的XML分配。

<note>
<to>Joy</to>
<from>Jaquie</from>
<heading>
Reminder email about product <a id="123" title ="product serial number 123"></a> </heading>
<body>Don't  forget to see the webURL <a id="123" title ="product serial number 123"> this a very useful product</a> and also see this product <a id="245"  title="product serial number 245"> this is certainly useful product</a></body>
</note>

我有一个API方法,它返回一个对应于id的自定义标题   标签

public String CustomTitle(String id) {

  -----
  -----
  -----
  return " This is custom title for this web url";
}

现在在上面的XML中,我必须替换驻留在上面的API方法返回的新custumTitle中的标记的标题。

我认为在某些地方我可能需要使用正则表达式或一些复杂的JAVA字符串操作。

有人可以帮我这个。

注意 - 我是JAVA的新手,SAXParser和DOM对我来说也是新手。我陷入了一些生产问题,所以请你为我的问题提供代码。

1 个答案:

答案 0 :(得分:0)

您需要查看SAXParser当您在XML中输入特定代码时,它会通知您。
然后,在标签内部,它将为您提供标签中的数据。当你在标签之外时(标签已经结束),它也会让你知道 教程:http://www.mkyong.com/java/how-to-read-xml-file-in-java-sax-parser/

其他解析器为DOMStAX 当您需要XML文档的内存树表示时,可以使用DOM,然后您可以使用XPath表达式获取特定节点。
Stax是Streaming API for XML。当您需要通过网络传输数据时,需要这样做。

如果您有点冒险,请查看JAXB。 JAXB允许您将XML直接映射到类文件 Blaise Doughan的详细教程:http://blog.bdoughan.com/2011/04/jaxb-and-json-via-jettison.html