zoukankan      html  css  js  c++  java
  • C# 手动读写app config 的源码

    public class ConfigOperator
     {
     public string strFileName;
     public string configName;
     public string configValue;
     public ConfigOperator()
     {
     //
     // TODO: 在此处添加构造函数逻辑
     //
     }
     public string ReadConfig1(string configKey)
     {
     configValue = "";
     configValue = ConfigurationSettings.AppSettings[""+configKey+""];
     return configValue;
     }
     
    //得到程序的config文件的名称以及其所在的全路径
     public void SetConfigName(string strConfigName)
     {
     configName = strConfigName;
     //获得配置文件的全路径
     GetFullPath();
     }
     public void GetFullPath()
     {
     //获得配置文件的全路径
     strFileName=AppDomain.CurrentDomain.BaseDirectory.ToString()+configName;
     }
     public void SaveConfig(string configKey,string configValue)
     {
     XmlDocument doc=new XmlDocument();
     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== ""+configKey+"") 
     {
     //对目标元素中的第二个属性赋值
     att=nodes[i].Attributes["value"];
     att.Value=configValue;
     break;
     }
     }
     //保存上面的修改
     doc.Save(strFileName);
     }
     public string ReadConfig(string configKey)
     {
         string tempStr = "";
         XmlDocument doc = new XmlDocument();
         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 == "" + configKey + "")
             {
                 //对目标元素中的第二个属性赋值
                 att = nodes[i].Attributes["value"];
                 tempStr= att.Value;
             }
         }
         //保存上面的修改
         return tempStr;
     }
     }
  • 相关阅读:
    leetcode 29-> Divide Two Integers without using multiplication, division and mod operator
    ros topic 发布一次可能会接收不到数据
    python中的print()、str()和repr()的区别
    python 部分函数
    uiautomatorviewer错误 unable toconnect to adb
    pyqt 不规则形状窗口显示
    appium 计算器demo
    Spring 3.0 注解注入详解
    Spring Autowire自动装配
    restful 学习地址
  • 原文地址:https://www.cnblogs.com/gc2013/p/3904351.html
Copyright © 2011-2022 走看看