如何读写配置文件app.config

在.Net中提供了配置文件,让我们可以很方面的处理配置信息,这个配置是XML格式的。而且.Net中已经提供了一些访问这个文件的功能。

1、读取配置信息

下面是一个配置文件的具体内容:

 

<? xml version="1.0" encoding="utf-8" ?>
< configuration >
  
< appSettings >
    
< add  key ="ConnectionString"  value ="Server=127.0.0.1;Database=Northwind;Integrated Security=True;"   />
    
< add  key ="TmpPath"  value ="C:/Temp"   />
  
</ appSettings >
</ configuration >

 

.net 提供了可以直接访问<appSettings>(注意大小写)元素的方法,在这元素中有很多的子元素,这些子元素名称都是“add”,有两个 属性分别是“key”和“value”。一般情况下我们可以将自己的配置信息写在这个区域中,通过下面的方式进行访问:

 

Dim  strConn  As   String   =  System.Configuration.ConfigurationSettings.AppSettings[ " ConnenctionString " ]

 

在AppSettings 后面的是子元素的key属性的值,例如appsettings["ConnenctionString"],我们就是访问<add key="ConnenctionString" value="Server=127.0.0.1;Database=Northwind;Integrated Security=True;" />这个子元素,它的返回值就是“Server=127.0.0.1;Database=Northwind;Integrated Security=True;”,即value属性的值。

代码示例:

 

     Public   Shared   ReadOnly   Property ConnStr() As String
        
Get
            
Return System.Configuration.ConfigurationSettings.AppSettings("ConnectionString")
        
End Get
    
End Property

 

2、设置配置信息

如果配置信息是静态的,我们可以手工配置,要注意格式。如果配置信息是动态的,就需要我们写程序来实现。在.Net中没有写配置文件的功能,我们可以使用操作XML文件的方式来操作配置文件。下面就是一个写配置文件的例子。

 

     Public   Sub SaveConfig(ByVal ConnenctionString As String)
        
Dim doc As New XmlDocument
        
'获得配置文件的全路径
        Dim strFileName As String = AppDomain.CurrentDomain.BaseDirectory.ToString() + "BlueHillWindowsVB.exe.config"
        doc.Load(strFileName)
        
'找出名称为“add”的所有元素
        Dim nodes As XmlNodeList = doc.GetElementsByTagName("add")
        
Dim i As Integer
        
For i = 0 To nodes.Count
            
'获得将当前元素的key属性
            Dim att As XmlAttribute = nodes(i).Attributes("key")
            
'根据元素的第一个属性来判断当前的元素是不是目标元素
            If att.Value = "ConnectionString" Then
                
'对目标元素中的第二个属性赋值
                att = nodes(i).Attributes("value")
                att.Value 
= ConnenctionString
                
Exit For
            
End If
        
Next i
        
'保存上面的修改
        doc.Save(strFileName)

    
End Sub
  ' SaveConfig

 

对应地,你也可以使用操作XML文件的方式来读取配置文件:

 

     Public   Shared   ReadOnly   Property ConnStr() As String
        
Get
            
Dim doc As New XmlDocument
            
'获得配置文件的全路径
            Dim strFileName As String = AppDomain.CurrentDomain.BaseDirectory.ToString() + "BlueHillWindowsVB.exe.config"
            doc.Load(strFileName)
            
'找出名称为“add”的所有元素
            Dim nodes As XmlNodeList = doc.GetElementsByTagName("add")
            
Dim i As Integer
            
For i = 0 To nodes.Count
                
'获得将当前元素的key属性
                Dim att As XmlAttribute = nodes(i).Attributes("key")
                
'根据元素的第一个属性来判断当前的元素是不是目标元素
                If att.Value = "ConnectionString" Then
                    
'返回目标元素中的第二个属性
                    att = nodes(i).Attributes("value")
                    
Return att.Value
                    
Exit For
                
End If
            
Next i
        
End Get
    
End Property

 

补充:

通过VS.NET集成开发环境,可以很方便地向我们的项目中添加app.config文件,方法如下:

在“解决方案资源管理器”中,右键单击项目图标,选择“添加”->“添加新项”命令,接下来在“模板”区域选择“应用程序配置文件”,单击“打开”按钮即可。

默认生成的代码如下:

 

<? xml version="1.0" encoding="utf-8"  ?>
< configuration >
</ configuration >

 

我们需要自己向App.config文件中添加<appSettings>元素。

说 明一点:虽然我们添加的应用程序配置文件名为App.config,但是应用程序经过编译之后会在 Bin 目录下自动生成一个“程序名.exe.config”的配置文件,例如生成的应用程序名称是 BlueHillWindowsVB.exe,那么配置文件名就是“BlueHillWindowsVB.exe.config”。应用程序实际读取的是 这个配置文件。因此假如你想通过操作XML文件的方式来修改配置文件,那么要修改的是“BlueHillWindowsVB.exe.config”而不 是“App.config”。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值