Reputation: 12842
XmlElement child = doc.CreateElement(element);
Where doc
is an object of XmlDocument
. When the code executes the above line with element=Tom and Jerry
, I get the following error:
The ' ' character, hexadecimal value 0x20, cannot be included in a name.
What should I do to include ' '
in XmlDocument? I can not replace it with anything else.
What are the other characters which XML element does not support for name ?
Upvotes: 4
Views: 9029
Reputation: 271
U can make the element like this:
<element name='Tom and Jerry' />
But if you need to store some data for this cartoon and have access to it by cartoon name:
<element name='Tom and Jerry'>some data</element>
Upvotes: 0
Reputation: 273244
I suppose you want an element with the value "Tom and Jerry", which is fine.
It is part of the XML syntax that you cannot have a space in the name of an element or attribute.
A possible method:
XmlElement child = doc.CreateElement("cartoon");
child.InnerText = "Tom and Jerry";
which produces
<cartoon>Tom and Jerry</cartoon>
Aside, consider XDocument when you can. Much easier than XmlDocument.
XElement child = new XElement("cartoon", "Tom and Jerry");
Upvotes: 6
Reputation: 81660
It seems your XML element name contains spaces...
This is illegal:
<tom and jerry>hi</tom and jerry>
Must be this:
<tomandjerry>hi</tomandjerry>
Upvotes: 4