如何轻松地将最后5行添加/保留为某种数组

时间:2010-11-09 07:01:26

标签: vb.net

我需要从“写入日志”功能中捕获最后5行,以便将其添加到调试电子邮件中。我想不出一个简单的方法。

我确实认为我可以拥有一个包含5个项目的数组,但我仍然需要对现有项目进行随机播放以添加当前数据。

有什么想法吗?

我正在使用vb.net 2005

3 个答案:

答案 0 :(得分:2)

使用队列。如果在队列中添加新项目时超过6,则将一个项目出列。

答案 1 :(得分:0)

如果你想使用List(Of LogEntry),那么伪代码是这样的:

  1. 将新的LogEntry附加到列表中。
  2. 当列表包含五个以上的项目时,请删除位置0处的项目(请参阅RemoveAt)。
  3. 这不是空间或CPU效率的,但它肯定会起到作用。

答案 2 :(得分:0)

  

我确实认为我可以拥有一个包含5个项目的数组,但我仍然需要对现有项目进行随机播放以添加当前数据。

是的,您可以移动数组内容以为新项目腾出空间,丢弃最旧的项目。

最好使用双链表,这样您就可以在列表的开头添加一个项目,并从列表末尾删除该项目(反之亦然),而无需触及其他元素。

在.NET中,您需要LinkedList类,然后使用AddFirst和RemoveLast(或AddLast和RemoveFirst,具体取决于您的需要)。

或者,您可以使用Queue类(可能实现为链接列表),然后调用Enqueue和Dequeue。