C# 软件配置保存-app.config

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dreamdonghui/article/details/84494092

在这里插入图片描述

在这里插入图片描述

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
    </startup>
</configuration>

添加后:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
    </startup>

  <appSettings>
    <add key="SystemSettingPageAcraneIMUPort" value="0"/>
    <add key="SystemSettingPageLoadIMUPort" value="1"/>
    <add key="SystemSettingPageRTKPort" value="2"/>
    <add key="SystemSettingPageTensionPort" value="3"/>
    <add key="SystemSettingPageTensionAlarm" value="10"/>
    <add key="SystemSettingPagePositionAlarm" value="1"/>
  </appSettings>
</configuration>

读:

        private void LoadAppConfig()
        {
            textBoxTensionAlarm.Text = ConfigurationManager.AppSettings["SystemSettingPageTensionAlarm"];
            textBoxPositionAlarm.Text = ConfigurationManager.AppSettings["SystemSettingPagePositionAlarm"];            
        }

点击保存后更改或添加(没有的话就添加):

        private void buttonAlarmValueSave_Click(object sender, EventArgs e)
        {
            AddUpdateAppSettings("SystemSettingPageTensionAlarm", textBoxTensionAlarm.Text);
            AddUpdateAppSettings("SystemSettingPagePositionAlarm", textBoxPositionAlarm.Text);
        }

        private void AddUpdateAppSettings(string key, string value)
        {
            try
            {
                var configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                var settings = configFile.AppSettings.Settings;
                if (settings[key] == null)
                {
                    settings.Add(key, value);
                }
                else
                {
                    settings[key].Value = value;
                }
                configFile.Save(ConfigurationSaveMode.Modified);
                ConfigurationManager.RefreshSection(configFile.AppSettings.SectionInformation.Name);
            }
            catch (ConfigurationErrorsException)
            {
                Console.WriteLine("Error writing app settings");
            }
        }

note:注意!!!实际保存的时候并不会更改app.config文件,但是实际上已经保存。这里对此问题暂时不做深究。

猜你喜欢

转载自blog.csdn.net/dreamdonghui/article/details/84494092
今日推荐