0
我試圖使用LumenWorks CsvReader解析以下CSV file。無法使用Lumenworks CsvReader解析CSV文件的最後一行
這是我的代碼:
using (DatabaseEntities context = new DatabaseEntities())
{
using (var csv = new CachedCsvReader(new StreamReader(@"C:\Users\Me\Desktop\sdn.csv"), false))
{
context.Database.ExecuteSqlCommand("TRUNCATE TABLE ofac_sdn");
foreach (var entry in csv)
{
var ofac = new ofac_sdn
{
ent_num = Convert.ToInt32(entry[0]),
SDN_Name = entry[1],
SDN_Type = entry[2],
Program = entry[3],
Title = entry[4],
Call_Sign = entry[5],
Vess_type = entry[6],
Tonnage = entry[7],
GRT = entry[8],
Vess_flag = entry[9],
Vess_owner = entry[10],
Remarks = entry[11]
};
context.ofac_sdn.Add(ofac);
}
}
context.SaveChanges();
對於所有的線,但最後一個,我沒有問題。 foreach
中的每個entry
包含正確分隔的每行信息,並且我的ofac_sdn
實例加載了正確的數據。
然而,CSV文件有東西在文件的結尾奇怪,如下所示的圖像(從記事本取++):
當foreach
到達最後一行時,它拋出以下情況除外:
「的CSV似乎是接近記錄‘5913’字段腐敗「1在位置 ‘0’當前的原始數據:‘’」
,我能想到的最簡單,最簡單的解決方法是刪除編程試圖解析之前,該文件的最後一行,但是這看起來像一個「便宜」修復並不會解決根本問題。有任何想法嗎?