我正在使用UWP应用程序,用户可以在其中输入放置在列表视图中的数据。一切都很好,但我怎样才能将用户数据保存到单独的文件中并在下次用户启动应用程序时加载它?
我试图找到解决方案,但我很难理解这些代码片段以及如何应用这些代码片段(因为我对C#和App开发相当新)。有人想解释我如何实现数据的保存/加载并解释代码的作用吗?
提前致谢! :)
答案 0 :(得分:0)
您可以创建如下文件:
StorageFile ageFile = await local.CreateFileAsync("Age.txt", CreationCollisionOption.FailIfExists);
我可以读取和写入这样的文件:
StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder;
var ageFile = await local.OpenStreamForReadAsync(@"Age.txt");
// Read the data.
using (StreamReader streamReader = new StreamReader(ageFile))
{
//Use like a normal streamReader
}
if you are trying to write, use OpenStreamForWriteAsync;
答案 1 :(得分:0)
如果我理解得很好,你就会有一些对象结构作为ListView的模型。启动应用程序时,您需要读取数据所在的文件。关闭应用程序(或其他一些事件)时,请写入完成更改的文件。正确?
1)当您的应用程序被加载/关闭时(或者在您进行修改或某些事件时),使用Windows.Storage API将文本读/写到文件中。
2)如果您要编写的数据只是一个字符串的监听,您可以将其保存在文件中。如果它更复杂,我建议以JSON格式序列化它。使用JSON.NET序列化(object - > string)和反序列化(object< - string)文件和对象结构的内容。
Product product = new Product();
product.Name = "Apple";
...
string json = JsonConvert.SerializeObject(product);