今天寫了個 windows的小程式,把我鬱悶了夠戧.太久沒有接觸了。就把一點兒小玩意兒寫下來,以方便大家以後查閱.
讀取app.config就不贅述了,主要說說寫入app.config.
據說微軟不太建議我們動態寫入app.config的,但是不可避免的有人因為業務或其他需要就非要寫入app.config.
其實app.config就是個xml檔案,找到位置,讀出來,改了,然後儲存回去,就行了。
重要一點:app.config運行時就不在原來的目錄下了,名稱也變了。所以在寫入時一定要寫運行時那個檔案.
代碼如下:
/**//// <summary>
/// 設定app.config中的某個key的value.
/// </summary>
/// <param name="AppKey">key</param>
/// <param name="AppValue">value</param>
public void SetValue(string AppKey, string AppValue)
{
XmlDocument xDoc = new XmlDocument();
//此處設定檔在程式目錄下
xDoc.Load(Application.StartupPath + "file://MailSender.exe.config/");
XmlNode xNode;
XmlElement xElem1;
XmlElement xElem2;
xNode = xDoc.SelectSingleNode("//appSettings");
xElem1 = (XmlElement)xNode.SelectSingleNode("//add[@key='" + AppKey + "']");
if (xElem1 != null)
{
xElem1.SetAttribute("value", AppValue);
}
else
{
xElem2 = xDoc.CreateElement("add");
xElem2.SetAttribute("key", AppKey);
xElem2.SetAttribute("value", AppValue);
xNode.AppendChild(xElem2);
}
xDoc.Save(Application.StartupPath + "file://MailSender.exe.config/");
}
其實挺簡單的,大家用時只需要把那個MailSender.exe.config改成自己的就行了(ProjectName.exe.config),編譯後去debug裡找一般都能找到.哈哈
備忘:代碼大部分來自網路,其它是自己的心得.謝謝大家支援.