1

我正在尝试读取我用作播放器设置的多个设置文件。C# 和 XNA

它们都有完全相同的设置。AKA Settings1 有 player1 的名称、ShipType、Weapon、Shield、Color 等……(大约 100 种东西) Settings2 有 player2 的信息,设置与玩家 1 相同。AkA Settings1.settings Settings2.settings 等……
我正在使用这个因为它让我可以轻松地引用 VS 中的所有内容,我只需单击即可添加内容,它会为我找出类型和所有好东西。

这就是我想做的

{
    System.Configuration.ApplicationSettingsBase[] playerSettings;

    playerSettings = new System.Configuration.ApplicationSettingsBase[2];

    playerSettings[0] = Settings1.Default;
    playerSettings[1] = Settings2.Default;

    string player1Name = playerSettings[0].Name;
    string player2Name = playerSettings[1].Name;
}

然而。如果我使用此设置 playerSettings[0] 不允许我访问 Name 属性。

当我进入调试时,我可以看到 PlayerSettings[0] 包含 Settings1,其中包含 Name 属性。我只是不知道如何在 VS 中访问它,所以我可以阅读它。

-       [0] {WindowsGame3.Settings1} System.Configuration.ApplicationSettingsBase {WindowsGame3.Settings1}
-       [WindowsGame3.Settings1]    {WindowsGame3.Settings1} WindowsGame3.Settings1
+       base    {WindowsGame3.Settings1} System.Configuration.ApplicationSettingsBase {WindowsGame3.Settings1} Name "sally" string

我曾希望能够使用 system.configureation.applicationsettingsbase[] 这样我就可以简单地将它传递给该方法,并且只需要在那里更新 1 次代码。而不是手动为每个玩家做这件事(现在是 4 次而且很长)

同样,这些必须是默认设置文件,您可以通过右键单击并选择 add-new-settings 添加到项目中。

TLDR:我需要一种方法来访问 System.Configuration.ApplicationSettingsBase 数组中的属性,该数组中充满了 .settings 文件。或将每个不同的 .settings 文件传递​​给一个方法,即使它们被识别为不同的类型谢谢

4

1 回答 1

2

File.Exists查看是否存在特定文件。
有几种测试文件存在的方法。File.Exists是最简单的。这是检查文件是否存在的最简单方法,它返回truefalse

于 2013-06-07T04:15:07.147 回答