C#对三种XML文件的读法

1.   XML文件的读取1
XML文件格式如下:
<?xmlversion="1.0"encoding="utf-8"?>
<configure>
 <configid="path"value="D:\新建文件夹" />
</configure>
 
//xml文件所在路径
private readonly static string xmlFilePath = @"..\..\DvrOut\path.xml";
   private readonly static XmlDocument document = new XmlDocument();
 
///<summary>
        ///获取XML中文件的保存路径
        ///</summary>
        ///<returns></returns>
        public string GetPathByConfigid()
        {
            document.Load(xmlFilePath);
 
            string result = null;
            foreach (XmlNode node in document["configure"])
            {
                if (node.Attributes["id"].Value.ToString() == "path")
                {
                    result = node.Attributes["value"].Value.ToString();
                }
            }
            return result;
        }
        ///<summary>
        ///设置XML中文件的保存路径
        ///</summary>
        ///<param name="text"></param>
        public static void SetConfig(string text)
        {
            document.Load(xmlFilePath);
 
            foreach (XmlNode node in document["configure"])
            {
                if (node.Attributes["id"].Value.ToString() == "path")
                {
                    node.Attributes["value"].Value = text;
                }
            }
            document.Save(xmlFilePath);
        }
2.   XML文件读取方法2
XML文件如下:
<a>   <b>bbb </b>   <c>ccc </c> </a>
读取b节点
public string readXml(string xmlpath, string element)//xmlpath是xml的文件名,element是你要查询的节点的名称,就是b
{
 try
{
string value = "";
XmlDocument doc = new XmlDocument();
doc.Load(xmlpath);
XmlNode node = doc.SelectSingleNode("//" + element);
//如果a外层还有节点就改为(“//外节点//”+ element)
value = node.InnerText;
return value;
}
catch (Exception e)
{
return "";
}
}
3.   XML文件读取方法3
XML文件如下:
<a>
 <b1>
    <c>ccc</c>
    <d>ddd</d>
 </b1>
 <b2>
    <e>eee</e>
    <f>fff</f>
 </b2>
</a>
private string GetInfoByXML(string xmlFilePath,string nodeName) // xmlFilePath是xml的文件名,nodeName是你要查询的节点的名称,就是c
        {
            document.Load(xmlFilePath);
            string result = string.Empty;
            try
            {
                XmlNodeList nodeList = document.SelectSingleNode("a").ChildNodes;
                if (nodeList != null && nodeList[0].ChildNodes != null)
                {
                    foreach (XmlNode xn in nodeList[0].ChildNodes)
                    {
                        if (xn.Name == nodeName)
                        {
                            result = xn.InnerText;
                            break;
                        }
                    }
                }
                return result;
            }
            catch (Exception ex)
            {
            }
}


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/hejialin666/archive/2008/07/10/2634761.aspx

作者:wpf之家
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/wpf123/p/2347353.html