1. 程式人生 > >XML 十六進位制值 0x0B 是無效的字元錯誤處理方法

XML 十六進位制值 0x0B 是無效的字元錯誤處理方法

case:

xmlDocument.Load

Ds.ReadXML

提示錯誤,錯誤資訊如下: 十六進位制值 0x0B 是無效的字元錯誤

產生原因是xml檔案中包含低位非列印字元造成的

處理方法:在產生xml檔案的時候,過濾低位非列印字元

public static string ReplaceLowOrderASCIICharacters(string tmp)
        {
            StringBuilder info = new StringBuilder();
            foreach (char cc in tmp)
            {
                int ss = (int)cc;
                if (((ss >= 0) && (ss <= 8)) || ((ss >= 11) && (ss <= 12)) || ((ss >= 14) && (ss <= 32)))
                    info.AppendFormat(" ", ss);//&#x{0:X};
                else info.Append(cc);
            }
            return info.ToString();
        }