讀寫設定檔app.config

來源:互聯網
上載者:User
在.Net中提供了設定檔,讓我們可以很方面的處理配置資訊,這個配置是XML格式的。而且.Net中已經提供了一些訪問這個檔案的功能。

1、讀取配置資訊
下面是一個設定檔的具體內容:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="ConnenctionString" value="*" />
    <add key="TmpPath" value="C:\Temp" />
  </appSettings>
</configuration>

.Net提供了可以直接存取<appSettings>(注意大小寫)元素的方法,在這元素中有很多的子項目,這些子項目名稱都是“add”,有兩個屬性分別是“key”和“value”。一般情況下我們可以將自己的配置資訊寫在這個地區中,通過下面的方式進行訪問:

String ConString=System.Configuration.ConfigurationSettings.AppSettings["ConnenctionString"];

在AppSettings後面的是子項目的key屬性的值,例如AppSettings["ConnenctionString"],我們就是訪問<add key="ConnenctionString" value="*" />這個子項目,它的傳回值就是“*”,即value屬性的值。

2、設定配置資訊
如果配置資訊是靜態,我們可以手工配置,要注意格式。如果配置資訊是動態,就需要我們寫程式來實現。在.Net中沒有寫設定檔的功能,我們可以使用操作XML檔案的方式來操作設定檔。下面就是一個寫設定檔的例子。        private void SaveConfig(string ConnenctionString)
        {
            XmlDocument doc=new XmlDocument();
            //獲得設定檔的全路徑
            string strFileName=AppDomain.CurrentDomain.BaseDirectory.ToString()+"Code.exe.config";
            doc.Load(strFileName);
            //找出名稱為“add”的所有元素
            XmlNodeList nodes=doc.GetElementsByTagName("add");
            for(int i=0;i<nodes.Count;i++)
            {
                //獲得將當前元素的key屬性
                XmlAttribute att=nodes[i].Attributes["key"];
                //根據元素的第一個屬性來判斷當前的元素是不是目標元素
                if (att.Value=="ConnectionString") 
                {
                    //對目標元素中的第二個屬性賦值
                    att=nodes[i].Attributes["value"];
                    att.Value=ConnenctionString;
                    break;
                }
            }
            //儲存上面的修改
            doc.Save(strFileName);
        }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.