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?
+3
A:
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.
David M
2009-07-23 07:49:48
Well, that is the same thing, but it is just as illegal.xmllint for example:test.xml:2: parser error : xmlParseCharRef: invalid xmlChar value 31
Filip
2009-07-23 08:15:07
Have added to my answer...
David M
2009-07-23 08:24:09
A:
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.
Mihai Nita
2009-07-24 08:02:38