如何在运行时将自定义数据集存储在内存中?

Ric*_*ard 0 c# arrays

我需要收集一些数据并暂时将其存储在内存中,然后将其写入文件.起初我以为我可以使用一个字典并使它全部工作,但是当我完成时,我意识到我需要第三个元素,所以我猜Dictionarys没用.

这三个元素就像字符串名称,bool问,今天的DateTime.

当函数启动时,我需要读取一个文件,其中每行存储一个元素,用管道分隔.当我浏览函数时,如果条件在foreach循环中的计算结果为false,则需要添加项目,如果条件为真,则需要删除.当函数完成后,我需要擦除文件,并将数组的内容转储回文件.

这个意思就像检查John Doe是否已经完成他的任务是否已经完成以及自上次被问及已经过去了XX天.如果XX天已过,请从阵列中删除他的记录,再次询问他,并在今天的日期添加新记录到阵列.(或者简单地说,在数组中更改日期并再次询问).然后将数组的内容转储到文件中,以便我们明天再次查看.

我之前从未使用过数组,所以我完全不知道如何做到这一点..当我搜索谷歌时,我发现了很多例子,但没有一个对我来说真的有意义.

你们有没有让我知道你将如何处理这个问题,因为我完全无能为力.

Met*_*uru 5

你应该让自己成为一个对象,比如......

class yourObject
{
    string name { get; set; }
    bool asked { get; set; }
    DateTime date { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后你可以创建一个列表来存储多个内存.

List<yourObject> myObjects = new List<yourObject>();

yourObject myObject = new yourObject();

yourObject.name = "Bob";
yourObject.asked = true;
yourObject.date = DateTime.Today;

myObjects.Add(yourObject);
Run Code Online (Sandbox Code Playgroud)

等...在循环中执行此操作或从数据源执行某些数据绑定以填充它.

写入文件是另一种动物,尝试在Google上搜索C#如何将数据写入文件(这是微软的结果).您需要做的是确定您希望如何存储它,因为这将决定您以后如何阅读它.你可以使用数据库表吗?