[英]Reading in a csv, getting System.FormatException error, but not sure why
我是C#的新手,我編寫了一個小測試應用程序,以了解我是否了解如何讀取csv文件。
我創建了一個類來處理收到的數據,但是我的代碼無法編譯 : An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
。
代碼如下:
static void Main(string[] args)
{
var fileName = @"C:\Sample.csv";
var file = new FileInfo(fileName);
if (file.Exists)
{
List<Company> comp = new List<Company>();
using (var reader = new StreamReader(File.OpenRead(fileName)))
{
while (!reader.EndOfStream)
{
var line = reader.ReadLine();
var values = line.Split(',');
var companyobj = new Company()
{
Id = Convert.ToInt32(values[0]),
CompanyCode = values[1]
};
comp.Add(companyobj);
foreach (Company c in comp)
{
Console.WriteLine(c.Id + " "+c.CompanyCode);
}
}
}
}
}
這很可能在以下行中發生:
Id = Convert.ToInt32(values[0]),
由於values[0]
可能不是有效的int。 可能的原因可能是
.split
返回一個空字符串,並且在嘗試轉換時失敗。 我會說#2是您更可能的罪魁禍首。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.