我正在编写一个日志文件解码器,它应该能够读取许多不同的文件结构。我的问题是如何最好地表示这些数据。我正在使用 C#,但对 OOP 很陌生。
示例:日志文件具有一系列传感器值。一个传感器读数可以称为A,另一个称为B。显然,有不止 2 种条目类型。在不同的日志文件中,它们可以存储为 ABABABABAB 或 AAAAABBBBB。
我正在考虑将其描述为条目块。所以在第一种情况下,一个块将是“AB”,有 5 个块。在第二种情况下,第一个块是'A',读取5次。这后面是一个'B'块,读取5次。
这是相当简单的(实际上有 40 种不同类型的日志文件,每个块中最多包含 40 个传感器值)。没有日志有超过 300 个块。
目前,我将所有这些存储在数据表中。每个条目都有一个列,具有要阅读的数量的属性。如果设置为 -1,它将继续到块中的下一列。如果没有,它将假定它已到达块的末尾。
这一切似乎都很笨拙。任何人都可以提出更好的方法吗?