public static Hashtable xml_unserialize(string strXml)
{
//加上下面这句就好了 strXml = strXml.Replace("&", "&"); Hashtable ht = new Hashtable(); XmlDocument XMLDom = new XmlDocument(); XMLDom.LoadXml(strXml); XmlNode newXMLNode = XMLDom.SelectSingleNode("root"); int i = 0; foreach (XmlNode xn in newXMLNode.ChildNodes) { ht.Add(i++, xn.InnerText); } return ht; }
> 和 < 这类字符是XML 标记字符,在 XML 中有特殊的含义。当在 SQL 查询(或 XPath 查询)中指定这些字符时,必须对它们进行适当的编码(也称为实体编码)。下表列出了这些特殊字符并描述了它们的含义。有关更多信息,请参见 XML 1.0 规范 中的 XML 1.0 规范。
特殊字符 特殊含义 实体编码
> 开始标记 >
< 结束标记 <
" 引号 "
' 撇号 '
& "&"符 &
XML 节点中不能包含这些特殊字符,“&”,“<”,“>”,不然解析时此XML会报错,使用时需要对它转换下