Невозможно использовать пробел в XMLElementName

StackOverflow https://stackoverflow.com/questions/1808395

  •  05-07-2019
  •  | 
  •  

Вопрос

Я использую XmlWriter для создания HTML, который работает хорошо, но теперь мне нужно разместить тег image, но я не могу этого сделать - он по-прежнему сообщает, что я не могу использовать ' ' в имени элемента.Пожалуйста, посоветуйте, как это решить, спасибо!

Редактировать:В принципе, как создать в XML-документе это:

<img src="path" />
Это было полезно?

Решение

Да, в имени элемента XML не должно быть пробела.

В случае < img src = " path " / GT &; имя элемента - img, затем есть атрибут с именем src и значением path. Таким образом, вам не нужен пробел в имени вашего элемента, вам просто нужно отобразить остальную часть как атрибут, а не пытаться поместить все это в поле имени элемента.

Другие советы

Что ж, это абсолютно верно - ты не могу иметь пробел в XML-файле имя элемента, или действительно в имени HTML-элемента.Как ты думаешь, зачем тебе это нужно?Теги изображений не содержат пробелов в имени элемента...

Вы уверены, что не хотите поместить пробел в значение атрибута?

Не могли бы вы привести нам пример?

Редактировать:Хорошо, итак, в своем комментарии вы хотите что-то вроде:

<img src="path" />

Здесь:

  • img является ли элемент Имя
  • src является атрибут Имя
  • path является значением атрибута

Таким образом, вы бы использовали что-то вроде:

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

Элемент name должен следовать очень строгим правилам. Он должен следовать за знаком «меньше» < (после которого не должно быть пробела). Тогда первый символ не может быть тире, точкой или номер (и некоторые другие). Наконец, остальное название следует за ним, которое может включать тире или точки .

Имя дополнительно ограничено для пространств имен XML +.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top