首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#无法读取XML里的内容,该怎么处理

2012-05-22 
C#无法读取XML里的内容XML代码如下:XML code?xml version1.0 encodingutf-8?xml012345678901

C#无法读取XML里的内容
XML代码如下:

XML code
<?xml version="1.0" encoding="utf-8"?><xml>    <0>12345678901</0></xml>

C#代码如下:
XML code
 String address = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + @"\phone.xml";try{    XmlDocument mydom = new XmlDocument();    mydom.Load(address);    XmlElement root = mydom.DocumentElement;    XmlNodeList setnode = root.GetElementsByTagName("phone");    if (setnode.Count > 0)    {       return setnode[0].InnerText;     }}catch (Exception ee){}

因为标签名是"0",所以C#无法读取到。若不改标签名,有什么办法能让C#读取到<0></0之间的内容吗?

[解决办法]
0是不能做节点名称的,本身就是错误的
mydom.Load(address);
就是错误的,你可以File.ReadAllText读取,正则分析

但是,既然你使用xml格式传输数据,就要按照xml的规则去写,要不然,麻烦多的是
[解决办法]
C# code
        string strTemp = "<?xml version=\"1.0\" encoding=\"utf-8\"?><xml><0>12345678901</0><0>58467</0></xml>";        string strReg = @"<0>([^<]+)</0>";        Regex reg = new Regex(strReg);        MatchCollection mc = reg.Matches(strTemp);        foreach (Match m in mc)        {            string strV = m.Groups[1].Value;        }
[解决办法]
牛人呀
[解决办法]
建议重写XML吧

热点排行