在文本文件中保存答案

时间:2014-05-09 13:43:32

标签: c# .net io

有没有办法保存' textfiles(.txt)中的userdata并重用它们?我在C#Visual Studio 2013(WFA)中编程 不允许使用数据库/ XML文件!

例如,我编写了一个有几个问题的测验。当我开始测验并给出正确和错误的答案时,我需要能够保存我的答案,看到我的正确/错误答案,我必须能够重试我的错误答案。

2 个答案:

答案 0 :(得分:1)

简短的回答是肯定的。长的答案也不错。我们假设我们构造了一组这样的类:

public class Quiz
{
    public List<Question> Questions { get; set; }

    public Quiz() { Questions = new List<Question>(); }
}

public class Question
{
    public string Question { get; set; }

    public bool Answer { get; set; }
}

现在让我们说UI为测验建立了一个很好的问题集合,随着时间的推移将答案设置为真或假,是或否你,所以最后我们需要保存它:< / p>

File.WriteAllText(path, JsonConvert.SerializeObject(quiz));

这会将JSON格式的整个测验和问题保存到文件路径中。

现在我们需要重装;这就是我使用JSON的原因:

var quiz = JsonConvert.DeserializeObject<Quiz>(File.ReadAllText(path));

在对对象进行更新后(即更改了答案),您可以再次运行:

File.WriteAllText(path, JsonConvert.SerializeObject(quiz));

注意:清楚(或应该清楚)每个测验都需要自己的文件。

注意:这还需要您获得Json.NET NuGet package,可以使用NuGet Visual Studio Extension进行安装。

答案 1 :(得分:1)

有许多关于如何在线进行此操作的示例,并确保堆栈溢出也很多。

要从.txt文件中读取,请查看

Reading textFile and saving the info into an array C#

要写入文本文件,请检查

Saving from List<T> to txt