我有一个C#项目,我需要从一些文本文件中读取一些网格数据(两列由可变数量的行形数据),并对它们进行一些数学比较。您认为在数据结构和设计方面代表这一点的最佳方法是什么?
示例数据表: LabelA:ValueA LabelB:ValueB
我正在考虑将所有数据读入sqlite数据库,然后使用查询使用LINQ对它们进行逐行比较?您如何看待这个想法与内存数据结构中的所有内容?如果还有其他想法,请大声说出来。感谢。
答案 0 :(得分:0)
如果它只是临时的,我认为没有理由增加数据库的开销。只需将其存储在内存中。二维数组似乎是最明显的数据结构,除非您对数组没有完全满足的特定要求。
答案 1 :(得分:0)
我不会坚持下去,除非将来完全有必要访问这些数据,避免重新处理所有内容。
我永远不会只使用一个数组,我会构造一个对象,以封装所有这些比较的逻辑。
我只是这样开始;
public class ImportedFile
{
private List<FileLine> lines;
public List<FileLine> Lines
{
get { return new ReadOnlyCollection(lines); }
}
public void AddLine(FileLine fl)
{
this.lines.Add(fl);
}
public void RemoveLine(FileLine fl)
{
this.lines.Remove(fl);
}
//Instance methods for comparing lines within the same file
//Static methods for comparing Files
}
public class FileLine
{
private String labelA;
public String LabelA
{
get { return labelA; }
set { labelA = value; }
}
private String labelB;
public String LabelB
{
get { return labelB; }
set { labelB = value; }
}
}