无法在XMLElementName中使用空格

时间:2009-11-27 12:10:07

标签: c# html xmlwriter

我正在使用XMLwriter来创建效果很好的HTML,但现在我需要放置图片标签,但我无法做到 - 它仍然报告我不能在元素名称中使用''。请建议hwo解决这个问题,谢谢!

编辑:基本上,如何在XML文档中创建:

<img src="path" />

3 个答案:

答案 0 :(得分:1)

嗯,这是绝对正确的 - 你不能在XML element name中有空格,或者确实在HTML元素名称中有空格。为什么你认为你需要它?图像标签在元素名称中没有空格...

您确定不想将空格放在属性值中吗?

你能举个例子吗?

编辑:好的,所以在评论中你想要的东西是:

<img src="path" />

下面:

  • img元素名称
  • src属性名称
  • path是属性值

所以你要使用类似的东西:

writer.WriteStartElement("img");
writer.WriteAttributeString("src", "path");
// Any extra bits you wanted
writer.WriteEndElement();

答案 1 :(得分:1)

没错,你不能在XML元素名称中有空格。

在&lt; img src =“path”/&gt;的情况下元素名称是img,然后有一个名称为src且值为path的属性。因此,您不需要在元素名称中使用空格,只需将其余部分作为属性渲染,而不是尝试将其全部放在元素名称字段中。

答案 2 :(得分:0)

元素name必须遵循非常严格的规则。它必须遵循较小的符号<(之后可能不会出现空格)。然后first character不能是破折号,点或数字(以及其他一些)。最后是the rest of the name,其中可能包括短划线或点。

XML +命名空间的名称进一步受限。