Reputation: 153
I need to write a text with the unicode character 0x1F in a utf-8 document (it is not an allowed character in xml). Is there a way to escape it, or do I have to discard it?
Upvotes: 13
Views: 21819
Reputation: 5787
Using 0x1F XML is illegal (http://www.w3.org/TR/xml11/#charsets). so there is no way to do it, except from encoding it yourself in some way. base-64 (as proposed), or url encode, or any other option that the xml does not understand. It is the same problem as storing binary data in xml.
Upvotes: 3
Reputation: 72850
This will do it in XML 1.1 (but is discouraged):

It isn't supported at all in XML 1.0. A workaround is to base-64 encode the text containing the character.
Upvotes: 9