第一次使用 csvReader - 注意它需要一个自定义类来定义 CSV 文件中的标题。
class DataRecord
{
//Should have properties which correspond to the Column Names in the file
public String Amount { get; set; }
public String InvoiceDate { get; set; }......
}
然后给出的示例使用这样的类:-
using (var sr = new StreamReader(@"C:\\Data\\Invoices.csv"))
{
var reader = new CsvReader(sr);
//CSVReader will now read the whole file into an enumerable
IEnumerable<DataRecord> records = reader.GetRecords<DataRecord>();
//First 5 records in CSV file will be printed to the Output Window
foreach (DataRecord record in records.Take(5))
{
Debug.Print("{0} {1}, {2}", record.Amount, record.InvoiceDate, ....);
}
两个问题:- 1. 该应用程序将加载具有不同标题的文件,因此我需要能够即时更新此类 - 这可能吗?如何?(我能够从 CSV 文件中提取标题。)
- CSV 文件可能有数百万行(gb 大小),因此这是导入文件的最佳/最有效方式。
Destination 是一个 SQLite DB - 以调试行为例。
谢谢