XML 操作

using   System;   
  
using   System.Xml;   
    
  
namespace   Common   
  
{   
  
///   <summary>   
  
///   Config   的摘要说明。   
  
///   </summary>   

  public   class   Config   
  
{   
  
private   String   msFileName   =   null;   
    
  
public   String   ConfigFile   
  
{   
  
get   
  
{   
  
return   this.msFileName;   
  }
   
  
set   
  
{   
  
if(System.IO.File.Exists(value.Trim()))   
  
{   
  
this.msFileName   =   value.Trim();   
  }
   
  }
   
  }
   
    
  
public   Config()   
  
{   
  
this.msFileName   =   String.Empty;   
  }
   
    
  
public   Config(String   ConfigFile)   
  
{   
  
this.ConfigFile   =   ConfigFile.Trim();   
  }
   
    
  
public   bool   ReadConfig(String   ContentName,   out   String   ContentValue)   
  
{   
  
bool   bFlag   =   false;   
    
  ContentValue   
=   String.Empty;   
    
  
if(!System.IO.File.Exists(this.msFileName))   
  
{   
  
return   bFlag;   
  }
   
    
                          
try   
                          
{   
                                  System.Xml.XmlDocument   xmlDoc   
=   new   System.Xml.XmlDocument();   
                                  xmlDoc.Load(
this.msFileName);   
                                  System.Xml.XmlNode   xmlNode   
=   xmlDoc.SelectSingleNode(ContentName);   
                                  ContentValue   
=   xmlNode.InnerText;   
    
                                  bFlag   
=   true;   
                          }
   
                          
catch   (XmlException   xmle)   
                          
{   
                                  System.Console.WriteLine(xmle.Message);   
                          }
   
    
  
return   bFlag;   
  }
   
    
  
public   bool   ReadConfig(String   ContentName,   String   PropertyName,   out   String   PropertyValue)   
  
{   
  
bool   bFlag   =   false;   
    
  PropertyValue   
=   String.Empty;   
    
  
if(!System.IO.File.Exists(this.msFileName))   
  
{   
  
return   bFlag;   
                          }
   
    
                          
try   
                          
{   
                                  XmlDocument   xmlDoc   
=   new   XmlDocument();   
                                  xmlDoc.Load(
this.msFileName);   
    
                                  XmlNode   xmlNode   
=   xmlDoc.SelectSingleNode(ContentName);   
    
                                  XmlAttributeCollection   xmlAttr   
=   xmlNode.Attributes;   
    
                                  
for(int   i=0;   i<xmlAttr.Count;   ++i)   
                                  
{   
                                          
if   (xmlAttr.Item(i).Name   ==   PropertyName)   
                                          
{   
                                                  PropertyValue   
=   xmlAttr.Item(i).Value;   
                                                  bFlag   
=   true;   
                                                  
break;   
                                          }
   
                                  }
   
                          }
   
                          
catch   (XmlException   xmle)   
                          
{   
                                  System.Console.WriteLine(xmle.Message);   
                          }
   
    
  
return   bFlag;   
                  }
   
    
                  
public   bool   WriteConfig(String   ContentName,   String   ContentValue)   
                  
{   
                          
bool   bFlag   =   false;   
    
                          
if   (!System.IO.File.Exists(this.msFileName))   
                          
{   
                                  
return   bFlag;   
                          }
   
    
                          
try   
                          
{   
                                  System.Xml.XmlDocument   xmlDoc   
=   new   System.Xml.XmlDocument();   
                                  xmlDoc.Load(
this.msFileName);   
                                  System.Xml.XmlNode   xmlNode   
=   xmlDoc.SelectSingleNode(ContentName);   
                                  xmlNode.InnerText   
=   ContentValue;   
    
                                  xmlDoc.Save(
this.msFileName);   
    
                                  bFlag   
=   true;   
                          }
   
                          
catch   (XmlException   xmle)   
                          
{   
                                  System.Console.WriteLine(xmle.Message);   
                          }
   
    
                          
return   bFlag;   
                  }
   
    
                  
public   bool   WriteConfig(String   ContentName,   String   PropertyName,   String   PropertyValue)   
                  
{   
                          
bool   bFlag   =   false;   
    
                          
if   (!System.IO.File.Exists(this.msFileName))   
                          
{   
                                  
return   bFlag;   
                          }
   
    
                          
try   
                          
{   
                                  XmlDocument   xmlDoc   
=   new   XmlDocument();   
                                  xmlDoc.Load(
this.msFileName);   
    
                                  XmlNode   xmlNode   
=   xmlDoc.SelectSingleNode(ContentName);   
    
                                  XmlAttributeCollection   xmlAttr   
=   xmlNode.Attributes;   
    
                                  
for   (int   i   =   0;   i   <   xmlAttr.Count;   ++i)   
                                  
{   
                                          
if   (xmlAttr.Item(i).Name   ==   PropertyName)   
                                          
{   
                                                  xmlAttr.Item(i).Value   
=   PropertyValue;   
                                                  bFlag   
=   true;   
                                                  
break;   
                                          }
   
                                  }
   
    
                                  xmlDoc.Save(
this.msFileName);   
    
                                  bFlag   
=   true;   
                          }
   
                          
catch   (XmlException   xmle)   
                          
{   
                                  System.Console.WriteLine(xmle.Message);   
                          }
   
    
                          
return   bFlag;   
                  }
   
  }
   
  }
原文地址:https://www.cnblogs.com/yiki/p/792041.html