制作Settings.txt文件 - 如何以正确的方式加载设置?

时间:2013-03-21 19:19:25

标签: wpf c#-4.0 .net-4.5

我有一个我正在处理的应用程序,它应该通过XML文件(名为Settings.txt)保存和加载设置 现在,这是我使用的代码:

public class Settings
{
    public bool Selected_64Bit { get; set; }
    public bool Supported_64Bit { get; set; }
    public bool FirstTime { get; set; }
}

static void SaveSettings(Settings settings)
{
    var serializer = new XmlSerializer(typeof(Settings));
    using (var stream = File.OpenWrite("settings.txt"))
    {
        serializer.Serialize(stream, settings);
    }
}

static Settings LoadSettings()
{
    if (!File.Exists("settings.txt"))
        return new Settings();

    var serializer = new XmlSerializer(typeof(Settings));
    using (var stream = File.OpenRead("settings.txt"))
    {
        return (Settings)serializer.Deserialize(stream);
    }
}

现在,我需要将设置加载到新的Settings()中。 我发现这样做:

Settings [VAR] = new Settings()

将使用所有Settings()创建一个新的false,但我想加载已保存的设置。 我很困惑,无法向自己解释......

最终产品应该:

  • 检查settings.txt是否存在
  • 如果确实如此 - 将设置加载到名为Settings的新Setting(在我的情况下)。
  • 如果没有 - 进行新设置然后保存。

我希望有人理解并能帮助我。 顺便说一句 - 我在C#中并不是那么优秀,而且我没有得到get \ set thingy,就像返回和其他方法一样..我知道基础知识,如果我不知道我会很高兴需要更复杂的技术。 如果我必须使用更复杂的技术 - 请深入解释,因为我不知道。

2 个答案:

答案 0 :(得分:1)

正如你设置的那样,你需要这样做:

Settings mySettings = Settings.LoadSettings();

这将运行您的静态LoadSettings方法并返回Settings对象。

答案 1 :(得分:0)

正如马特已写的那样

Settings mySettings = Settings.LoadSettings();

将完成这项工作。

如果您有应用程序,也可以使用其设置。您可以通过Properties.Settings.Default获取该设置,并在项目设置中定义一些属性。

相关问题