c#.net写入app.config

今天写了个 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里找一般都能找到.哈哈
备注:代码大部分来自网络,其它是自己的心得.谢谢大家支持.

posted on 2008-05-13 17:21 GodSpeed 阅读(456) 评论(1)  编辑 收藏

评论

#1楼  2008-05-15 22:01 李涛      

像这样的小功能,小技巧,平时的确需要总结。
另外,如果要配置一些功能,你可以自己新建一个xml文件,普通的文本也可以,当然ini文件也不错。   回复  引用  查看    


标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
 
另存  打印
 


<2008年5月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

导航

统计

与我联系

常用链接

留言簿

我参加的小组

我参与的团队

我的标签

随笔档案(36)

搜索

最新评论

阅读排行榜

评论排行榜