我正在开发一个实际上也是游戏的 WinRT 应用程序。我需要将不同的信息(例如音频设置或播放器统计信息)保存在某种文件中或以某种方式保存。如果它是一个文件,只需将设置写入或...?我有一个想法,但我认为这太初级了......获得这个的最佳方法是什么?
非常感谢任何帮助或建议!
我正在开发一个实际上也是游戏的 WinRT 应用程序。我需要将不同的信息(例如音频设置或播放器统计信息)保存在某种文件中或以某种方式保存。如果它是一个文件,只需将设置写入或...?我有一个想法,但我认为这太初级了......获得这个的最佳方法是什么?
非常感谢任何帮助或建议!
以下是在 WinRT 应用程序中保存数据的一些方法,名称中带有设置的方法可能就是您要寻找的方法!- 只需添加其他方法,- 如果您愿意,您也可以序列化数据。这是工作代码-但不要忘记添加错误处理等。这是一个简单的演示代码:)
至于设置,您可以将简单的设置保存为键和值,对于更复杂的设置,您可以使用容器。我在这里提供了两个例子=)
public class StorageExamples
{
public async Task<string> ReadTextFileAsync(string path)
{
var folder = ApplicationData.Current.LocalFolder;
var file = await folder.GetFileAsync(path);
return await FileIO.ReadTextAsync(file);
}
public async void WriteTotextFileAsync(string fileName, string contents)
{
var folder = ApplicationData.Current.LocalFolder;
var file = await folder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
await FileIO.WriteTextAsync(file, contents);
}
public void SaveSettings(string key, string contents)
{
ApplicationData.Current.LocalSettings.Values[key] = contents;
}
public string LoadSettings(string key)
{
var settings = ApplicationData.Current.LocalSettings;
return settings.Values[key].ToString();
}
public void SaveSettingsInContainer(string user, string key, string contents)
{
var localSetting = ApplicationData.Current.LocalSettings;
localSetting.CreateContainer(user, ApplicationDataCreateDisposition.Always);
if (localSetting.Containers.ContainsKey(user))
{
localSetting.Containers[user].Values[key] = contents;
}
}
}
MSDN 有一篇关于在 Windows 应用商店应用程序中使用应用程序设置的文章。
Windows.UI.ApplicationSettings
命名空间包含您需要的所有类。
提供允许开发人员定义出现在 Windows shell 的设置窗格中的应用设置的类。设置窗格为用户提供了一个一致的位置来访问应用程序设置。
基本上,这些类允许您存储应用程序设置并将它们挂接到所有应用程序设置的标准位置。您的用户不必学习任何新东西,设置将在预期的位置。