0
我試圖使用FileHelper 3.1.5來解析用戶提供的CSV文件。我不知道編譯時的列名。我需要一種動態讀取列的方式,既可以是列數據,也可以是頭信息。當我不知道列名時解析CSV w/FileHelpers的示例
這是可以嗎?所有的例子都解析成靜態類。
我試圖使用FileHelper 3.1.5來解析用戶提供的CSV文件。我不知道編譯時的列名。我需要一種動態讀取列的方式,既可以是列數據,也可以是頭信息。當我不知道列名時解析CSV w/FileHelpers的示例
這是可以嗎?所有的例子都解析成靜態類。
當然你可以做到這一點。使用FileHelpers class builder在運行時構建導入規範。例如:
// create a FileHelpers class with a comma delimiter.
DelimitedClassBuilder cb = new DelimitedClassBuilder("Person", ",");
// add your fields based on whatever logic you like (e.g., maybe read the column names from the first row)
cb.AddField("firstName", typeof(string));
cb.AddField("lastName", typeof(string));
cb.LastField.FieldNullValue = "default last name";
// create your import engine from the class you created above.
DelimitedFileEngine engine = new DelimitedFileEngine(cb.CreateRecordClass());
DataTable dt = engine.ReadFileAsDT("data.csv");