我正在寻找关于在内存中保存CSV(逗号分隔值)表的最合适的数据结构的建议.它应该涵盖两种情况:带有和没有标题的表.如果表包含标题,则所有行的所有字段都由key-> value对确定,其中key是标题中的名称,value是字段的适当内容.如果表不包含标题,则行只是字符串列表或者生成键名的key-> value对(如'COL1','COL2',...'COLn').
我正在寻找最简单(更少代码)和最通用的解决方案.
我正在考虑以下子类,但怀疑它是否是正确/有效的实现方式:
TCSV = class (TObjectList<TDictionary<string, string>>)
...
public
constructor Create(fileName: string; header: Boolean; encoding: string = '';
delimiter: Char = ';'; quoteChar: Char = '"'); overload;
...
end;
Run Code Online (Sandbox Code Playgroud)
看起来我必须为每一行字段保留密钥.怎么样TDictionary<string, TStringList>?这会是一个更好的解决方案吗?
| 归档时间: |
|
| 查看次数: |
1843 次 |
| 最近记录: |