zoukankan      html  css  js  c++  java
  • 配置文件操作类

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Xml;
    
    namespace ConsoleApplication1
    {
        /// <summary>
        /// 配置文件工具类
        /// </summary>
        public static class ConfigUtil
        {
            /// <summary>
            /// 修改Config配置文件的值
            /// </summary>
            /// <param name="filePath"></param>
            /// <param name="key"></param>
            /// <param name="newValue"></param>
            public static void SetAppSettingsExe(string filePath, string key, string newValue)
            {
                try
                {
                    var doc = new XmlDocument();
                    doc.Load(filePath);
    
                    doc.SelectSingleNode("/configuration/appSettings/add[@key='" + key + "']").Attributes["value"].Value = newValue;
                    doc.Save(filePath);
                    doc.Load(filePath);
                    doc = null;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
    
            /// <summary>
            /// 获取Config配置文件的值
            /// </summary>
            /// <param name="filePath"></param>
            /// <param name="key"></param>
            public static string GetAppSettingsExe(string filePath, string key)
            {
                try
                {
                    var doc = new XmlDocument();
                    doc.Load(filePath);
                    return doc.SelectSingleNode("/configuration/appSettings/add[@key='" + key + "']").Attributes["value"].Value;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
    
            /// <summary>
            /// 修改vshost.exe.Config配置文件的值
            /// </summary>
            /// <param name="key"></param>
            /// <param name="value"></param>
            public static void SetAppSettingsVshostExe(string key, string value)
            {
                try
                {
                    //vshost.exe.Config
                    var doc = new XmlDocument();
                    doc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
    
                    doc.SelectSingleNode("/configuration/appSettings/add[@key='" + key + "']").Attributes["value"].Value = value;
    
                    doc.Save(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
    
            /// <summary>
            /// 获取vshost.exe.Config配置文件的值
            /// </summary>
            /// <param name="key"></param>
            /// <returns></returns>
            public static string GetAppSettingsVshostExe(string key)
            {
                try
                {
                    var doc = new XmlDocument();
                    doc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
                    return doc.SelectSingleNode("/configuration/appSettings/add[@key='" + key + "']").Attributes["value"].Value;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
    }

    调用:

           ConfigUtil.SetAppSettingsVshostExe("aa123", "你们");
                var v = ConfigUtil.GetAppSettingsExe(@"E:\项目\ConsoleApplication1\app.config", "aa");
                var v2 = ConfigUtil.GetAppSettingsVshostExe("aa");
                ConfigUtil.SetAppSettingsExe(@"E:\项目\ConsoleApplication1\app.config", "aa", "马");
  • 相关阅读:
    004---基于TCP的套接字
    003---socket介绍
    002---tcp/ip五层详解
    001---C/S架构
    008---re正则模块
    007---logging日志模块
    006---hashlib模块
    005---json & pickle
    004---os & sys
    22.解决 eclipse 与 AS 共用 SDK 导致 eclipse ADT 无法使用的问题
  • 原文地址:https://www.cnblogs.com/gossip/p/2514730.html
Copyright © 2011-2022 走看看