无效的XML字符

时间:2010-10-08 07:28:48

标签: .net xml special-characters

我有一个文本文件(UTF-8)文件。此文件的内容是从富文本文档中提取的,可能是MS Word,PDF,HTML或任何东西。我必须将此内容传递给Web服务,但大多数时候它包含无效字符,如换页或null。现在发生的事情是当我将包含无效字符的文件内容传递给它抛出异常的Web服务时(不是有效的XML字符)。

由于我发现几个字符对XML无效,但我可以使用正确的.NET函数清理字符串并删除所有无效字符,或者我是否有任何真实网站的无效字符列表。

提前感谢您的帮助。

3 个答案:

答案 0 :(得分:0)

可能最好的方法是在Base64中编码整个文本作为示例。

http://en.wikipedia.org/wiki/Base64

此致

答案 1 :(得分:0)

http://java.net/jira/browse/JAXB-614

此链接将帮助您进行设置。无效的XML字符集是: '\ u0000','\ u0001','\ u0002','\ u0003','\ u0004','\ u0005','\ u0006','\ u0007','\ u0008','\ u000B', '\ u000C','\ u000E','\ u000F','\ u0010','\ u0011','\ u0012','\ u0013','\ u0014','\ u0015','\ u0016', '\ u0017','\ u0018','\ u0019','\ u001A','\ u001B','\ u001C','\ u001D','\ u001E','\ u001F','\ uFFFE', '\ uFFFF'

答案 2 :(得分:0)

如果在没有任何修改的情况下发送文件内容很重要,最好的决定是逃避内容。如果不是,请尝试使用XmlConvert.IsXmlChar方法,这有助于检查角色的正确性。检查this my answer代码示例。