当前位置: 首页 > 面试题库 >

使用Java中的名称空间创建XML文档

汤承允
2023-03-14
问题内容

我正在寻找可以构造使用名称空间的XML文档的Java代码。我似乎无法使用我最喜欢的工具找到任何东西,因此希望有人可以帮助我。


问题答案:

我不确定您要做什么,但是我将jdom用于大多数xml问题,并且它支持名称空间(当然)。

代码:

Document doc = new Document();
Namespace sNS = Namespace.getNamespace("someNS", "someNamespace");
Element element = new Element("SomeElement", sNS);
element.setAttribute("someKey", "someValue", Namespace.getNamespace("someONS", "someOtherNamespace"));
Element element2 = new Element("SomeElement", Namespace.getNamespace("someNS", "someNamespace"));
element2.setAttribute("someKey", "someValue", sNS);
element.addContent(element2);
doc.addContent(element);

产生以下xml:

<?xml version="1.0" encoding="UTF-8"?>
 <someNS:SomeElement xmlns:someNS="someNamespace" xmlns:someONS="someOtherNamespace"  someONS:someKey="someValue">
  <someNS:SomeElement someNS:someKey="someValue" />
 </someNS:SomeElement>

其中应包含您需要的一切。希望能有所帮助。



 类似资料:
  • 问题内容: 您可以帮助我调整此代码,以便它成功解析XML吗?如果删除XML名称空间,它将起作用: 问题答案: 您必须在XPath中使用前缀,例如:“ / my:foo / my:bar”您可以选择任何喜欢的前缀-它与您在XML中使用或不使用的前缀无关。文件-但您必须选择一个。这是XPath 1.0的限制。 您必须执行从“我”到“ http://foo.bar/boo ”的前缀映射(而不是“ htt

  • 问题内容: 我正在尝试解析Java中的SOAP请求,但代码未返回任何节点,这里的代码可以使任何人找到错误 问题答案: 您需要设置一个上: 演示版 输出量

  • 问题内容: 我正在通过Java创建多个XML文件,到目前为止一切正常,但是现在尝试创建带有名称空间前缀节点的文件时遇到了问题,例如,使用已经重构的代码版本适用于没有名称空间的普通xml文件。 被抛出的错误是: 抱歉,德国人说“指定的XML符号无效”。 发生错误的代码行: 为了消除错误导致转义较长的字符串或那些行中的某些内容的可能性,我也尝试仅使用,但这会导致相同的错误。 这就是为什么我认为它与名称

  • 使用xslt 1.0(BizTalk 2016)我正在寻找一种通用的方法来选择任何有效的xml文档的命名空间 例如,我有以下xml文档: 假设根元素的值可以是任何东西,那么选择名称空间值的xpath是什么http://www.random.com/bo/request/portfolioactivation 我原本希望“/*/@xmlns”能起作用,但事实并非如此。

  • 问题内容: 我有一个像这样开始的XML文件: 我将不得不打开许多这些文件。它们中的每一个都有不同的名称空间,但一次只能有一个名称空间(我永远不会在一个xml文件中找到两个定义的名称空间)。 使用XPath,我希望有一种自动的方法将给定的名称空间添加到名称空间管理器中。到目前为止,我只能通过解析xml文件来获取名称空间,但是我有一个XPathNavigator实例,并且它应该具有一种不错且干净的方式

  • 问题内容: 这个问题已经在这里有了答案 : 使用ElementTree保存XML文件 (4个答案) 5年前关闭。 我正在Python 2.7中使用ElementTree构建SVG文档。这是代码: 生成输出: 这不会解析为有效的SVG。如何删除ns0名称空间? 问题答案: 我只是想通了,无法删除问题,所以这里是: 我认为这仅适用于Python 2.7。