XML特殊字符处理

 //只能被动接受xml,在xmlreader load的时候报错,所以改为首先用Get请求,string接收,进行特殊字符处理


//LogHelper.LogDebug("异常捕获请求URL:", strURL);

        string strJSON = HttpHelper.GetWebPage(strURL, Encoding.UTF8);
        strJSON = strJSON.Replace("<?xml version=\"1.0\"?>","");
            //LogHelper.LogDebug("返回原字符串://n",strJSON);
            strJSON = XMLHelper.ConvertSpecialLetter(strJSON);
            //LogHelper.LogDebug("返回处理后字符串://n", strJSON);
            strJSON = "<?xml version=\"1.0\"?>" + strJSON;
            XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Normalize();/// 摘要:
        //     将此 XmlNode 下子树完全深度中的所有 XmlText 节点都转换成“正常”形式,在这种形式中只有标记(即标记、注释、处理指令、CDATA 节和实体引用)分隔
        //     XmlText 节点,也就是说,没有相邻的 XmlText 节点。

            xmlDoc.LoadXml(strJSON);
            //LogHelper.LogDebug("xml内容", XMLHelper.ConvertXmlToString(xmlDoc));        


        /// <summary>
        /// 传给后台组xml节点中特殊字符的转换
        /// </summary>
        /// <param name="objString">The obj string.</param>
        private static string ConvertSpecialLetter(string objString)
        {
            objString = objString.Replace("&", "&amp;");
            return objString;
        }

猜你喜欢

转载自blog.csdn.net/jianxg1314/article/details/80537672
今日推荐