anyThing is everyThing

收藏、学习、积累、创新

“”(十六进制值 0x1D)是无效的字符

加载或保存XML时引发的异常.System.ArgumentException: “”(十六进制值 0x1D)是无效的字符。
产生原因是xml文件中包含低位非打印字符造成的
处理方法:在产生xml文件的时候,过滤低位非打印字符

把一个字符串中的 低序位 ASCII 字符 替换成 &#x  字符
转换  ASCII  0 - 8  -> &#x0 - &#x8
转换  ASCII 11 - 12 -> &#xB - &#xC
转换  ASCII 14 - 31 -> &#xE - &#x1F

return System.Text.RegularExpressions.Regex.Replace(HttpUtility.HtmlEncode(str),@"[\x00-\x08]|[\x0B-\x0C]|[\x0E-\x1F]", "");

不允许评论