【问题标题】:How to create xml element with no attributes but with value如何创建没有属性但有值的xml元素
【发布时间】:2016-05-27 10:45:37
【问题描述】:

我希望创建以下内容:

<element="value"/>

但只能找到例子来创建:

<element attribute="value"/>

你能给我用Java创建它的语法吗?

【问题讨论】:

  • 您要创建的 XML sn-p 不是有效的 XML。另外,我不明白你的问题。什么意思,用 Java 创建 XML?

标签: java xml tags elements


【解决方案1】:

这真的有效吗?属性是向元素添加额外的数据,作为键/值,而它的值应该在打开的标签空间内表示,例如:

<element>Value</element> 

因为这将是任何解析器读取它的有效方式。

【讨论】:

  • 在我的场景中,我们最初有一个具有许多属性的元素,但我们希望将它们分离成它们自己的元素,并被父元素包围。实际上,该值指的是元素名称,但每个元素都只会有一个“名称”属性,这似乎有点多余。我不是 100% 确定我们的解析器是如何工作的,但这是它所期望的格式
【解决方案2】:

@Richard Tyregrim 是对的,但实际上 Value 在这里代表了一个内部文本。

<element value="_value_"/>

这是如何以另一种方式介绍它的示例。

     // carname element
     Element element = doc.createElement("element");
     Attr attrType = doc.createAttribute("value");
     attrType.setValue("_value_");
     element.setAttributeNode(attrType);
     element.appendChild(
         //this is your's node's inner text
         doc.createTextNode("__inner_text_of_node")
     );
     parentNode.appendChild(element);

是的,这个 XML 是有效的 https://www.w3.org/TR/REC-xml/#sec-starttags

【讨论】:

  • tutorialspoint.com/java_xml/java_dom_create_document.htm 下面是如何在 java 中创建 XML 文档的示例。
  • 我查看了示例,但其中每个被设置的值都有一个相应的属性来设置它。有没有办法可以将 setValue() 方法直接应用于元素本身?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-12
  • 1970-01-01
  • 2019-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多