C# 操作配置文件 App.config

原文:http://www.cnblogs.com/253891489/articles/2008669.html

using  System;
using  System.Collections.Generic;
using  System.Text;
using  System.Configuration;

namespace  Schwann.CommLibrary
{
    
public   class  ConfigHelper
    {
        
///   <summary>
        
///  根据键值获取配置文件
        
///   </summary>
        
///   <param name="key"> 键值 </param>
        
///   <returns></returns>
         public   static   string  GetConfig( string  key)
        {
            
string  val  =   string .Empty;
            
if  (ConfigurationManager.AppSettings.AllKeys.Contains(key))
                val 
=  ConfigurationManager.AppSettings[key];
            
return  val;
        }

        
///   <summary>
        
///  获取所有配置文件
        
///   </summary>
        
///   <returns></returns>
         public   static  Dictionary < string string >  GetConfig()
        {
            Dictionary
< string string >  dict  =   new  Dictionary < string string > ();
            
foreach  ( string  key  in  ConfigurationManager.AppSettings.AllKeys)
                dict.Add(key, ConfigurationManager.AppSettings[key]);
            
return  dict;
        }

        
///   <summary>
        
///  根据键值获取配置文件
        
///   </summary>
        
///   <param name="key"> 键值 </param>
        
///   <param name="defaultValue"> 默认值 </param>
        
///   <returns></returns>
         public   static   string  GetConfig( string  key,  string  defaultValue)
        {
            
string  val  =  defaultValue;
            
if  (ConfigurationManager.AppSettings.AllKeys.Contains(key))
                val 
=  ConfigurationManager.AppSettings[key];
            
if  (val  ==   null )
                val 
=  defaultValue;
            
return  val;
        }

        
///   <summary>
        
///  写配置文件,如果节点不存在则自动创建
        
///   </summary>
        
///   <param name="key"> 键值 </param>
        
///   <param name="value"> </param>
        
///   <returns></returns>
         public   static   bool  SetConfig( string  key,  string  value)
        {
            
try
            {
                Configuration conf 
=  ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                
if  ( ! conf.AppSettings.Settings.AllKeys.Contains(key))
                    conf.AppSettings.Settings.Add(key, value);
                
else
                    conf.AppSettings.Settings[key].Value 
=  value;
                conf.Save();
                
return   true ;
            }
            
catch  {  return   false ; }
        }

        
///   <summary>
        
///  写配置文件(用键值创建),如果节点不存在则自动创建
        
///   </summary>
        
///   <param name="dict"> 键值集合 </param>
        
///   <returns></returns>
         public   static   bool  SetConfig(Dictionary < string string >  dict)
        {
            
try
            {
                
if  (dict  ==   null   ||  dict.Count  ==   0 )
                    
return   false ;
                Configuration conf 
=  ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                
foreach  ( string  key  in  dict.Keys)
                {
                    
if  ( ! conf.AppSettings.Settings.AllKeys.Contains(key))
                        conf.AppSettings.Settings.Add(key, dict[key]);
                    
else
                        conf.AppSettings.Settings[key].Value 
=  dict[key];
                }
                conf.Save();
                
return   true ;
            }
            
catch  {  return   false ; }
        }
    }
}

上一篇学习了配置文件读取的处理方式,但是没有对经常用到的 <appSettings>进行学习,其实这些参数的读取要简单得多:
假设有如下配置参数

  <appSettings>
    <add key="address" value="China"/>
  </appSettings>

读取:

string address=System.Configuration.ConfigurationManager.AppSettings["address"].ToString();

事实就是这么简单

你可能感兴趣的:(C# 操作配置文件 App.config)