日期:2014-05-17  浏览次数:20450 次

关于C#读到XML“路径中具有非法字符”问题,求解,大虾请进!
代码如下:

//string result = GetPageHtml(_payUrl, "", "gb2312");
result ="<?xml version=\"1.0\" encoding=\"gb2312\"?>\r\n<Root>\r\n<Result>1</Result>\r\n<Msg></Msg>\r\n</Root>\r\n"
            XmlDocument dom = new XmlDocument();
            dom.Load(result.Replace("\r\n",""));
            XmlNode node = dom.DocumentElement;
            XmlNode t1Node = node.SelectSingleNode("Result");
            XmlNode t2Node = node.SelectSingleNode("Msg");
            string rest = t1Node.InnerText;

代码执行到:dom.Load(result.Replace("\r\n",""));就出问题了:
如下图:


求解,先行谢过!

------解决方案--------------------
dom.Load()  方法的参数应该是xml文件的路径吧

<?xml version=\"1.0\" encoding=\"gb2312\"?>\r\n<Root>\r\n<Result>1</Result>\r\n<Msg></Msg>\r\n</Root>\r\n
很明显不是路径,替换之后也不是呀
------解决方案--------------------
dom.Load(路径) 你那明显不是路径,是解析完的一个xml文本 
------解决方案--------------------
用XmlReader
------解决方案--------------------
比如说xml文件在我项目一个xml文件中
XmlDocument xml = new XmlDocument();
xml.Load(Server.MapPath("../xml/xl.xml");Load是读取文件路径.
你刚才是把内容写进去了
------解决方案--------------------
引用:
引用:dom.Load(路径) 你那明显不是路径,是解析完的一个xml文本
求方法!


用XmlDocument.LoadXml 方法

using System;
using System.Xml;

public class Sample {