对于 UWP,我们将把我们的数据保存在本地文件夹中的 ApplicationData 中。我们将 StreamWriter 写入一个文件流和 StreamReader 从同一个流中读取。
去阅读更多关于ApplicationData
首先创建一个类来捕获您需要从 UI 声明的所有变量。
public class Entity
{
public string name { get; set; }
public int age { get; set; }
public string dinner { get; set; }
}
现在让我们开始将内容从 UI 提交到 applicationData 存储。
using System.IO
OnClickEvent()
{
Entity ent = new Entity();
ent.name = tbxName.Text;
ent.age = int.Parse(tbxAge.Text);
ent.dinner = tbxDinner.Text;
//save
var myStream = await ApplicationData.Current.LocalFolder.OpenStreamForWriteAsync("[PUT-HERE-NAME].txt", CreationCollisionOption.ReplaceExisting);
using (StreamWriter writer = new StreamWriter(myStream))
{
var results = JsonConvert.SerializeObject(ent);
writer.Write(results);
}
}
现在让我们从存储中读取写入的数据。我们现在将使用 Stream Reader。
using System.IO;
using Newtonsoft.Json;
OnClickEvent
{
Entity ent = new Entity();
string content = string.Empty;
var localFolder = ApplicationData.Current.LocalFolder;
await localFolder.CreateFileAsync("test.txt", CreationCollisionOption.OpenIfExists);
var stream = await localFolder.OpenStreamForReadAsync("test.txt");
using (StreamReader reader = new StreamReader(stream))
{
content = await reader.ReadToEndAsync();
ent= JsonConvert.DeserializeObject<Entity>(content);
}
}
在能够读取之后,您现在可以将数据显示给用户。
tbxName.Text = ent.name;
tbxAge.Text = ent.age.ToString();
tbxDinner.Text = ent.dinner
随意询问您是否遇到任何问题或不了解某些内容。