CSV导入(可变字段)

时间:2009-09-04 10:11:10

标签: c# winforms csv import

我必须导入一系列CSV文件并将记录放入Access数据库。这本身并不是一个问题。

复杂性来自于每个CSV文件的格式可变,因为字段数可能会有所不同。

考虑这一点的最佳方式是有80个主域,每个CSV文件可能包含这80个字段的任何子集。告诉您正在处理的内容的唯一方法是查看CSV文件中的字段标题。写入Access文件的数据必须包含所有80个字段(因此需要将缺少的字段写为空值)。

有没有人知道处理此变量映射/导入的任何代码,而不是重新发明轮子?

或者任何正确方向的指针都会受到赞赏。

2 个答案:

答案 0 :(得分:4)

适用于.NET的最佳CSV阅读器库是LumenWorks'。它不会将数据插入到Access中,我认为您仍然需要编写一些代码来处理列差异,但它会比滚动自己的解析器更容易,而且速度会更快。

答案 1 :(得分:0)

通常,重复数据传输的基本自动CSV导入应该符合商定规范的一致输入文件。

如果用户将CSV文件导入应用程序,则可以通过列出CSV文件中的字段来完成基本映射(例如,读取第一行中的值) 并在主菜(db)字段列表旁边有一个下拉字段。

您可以通过保存输入字段索引列表或具有相应主字段索引/ ID /名称的名称来保存映射以供将来参考。