[英]How to read data from any file and insert to class object using c#
我正在从 CSV 文件中读取数据并尝试添加到 object。 但是当我通过循环通过记录添加新记录时,object 中的数据被覆盖。
public static void Process()
{
var path= @"ABC.csv";
var header = false;
var lines = System.IO.File.ReadAllLines(filePath);
var element = new List<Content>();
var mapTo = new Content();
for (var i = 0; i < lines.Length; i++)
{
var t = lines[i];
if (!header)
{
header = true;
}
else
{
var data = t.Split(',');
mapTo.Key= data[0];
mapTo.Name= data[1];
mapTo.Number= data[2];
mapTo.Date= data[3];
element.Add(mapTo);
}
}
var result = element;
}
所以在这里,当我尝试将 mapTo 添加到元素时,元素变量中的所有内容都被覆盖了。任何人都可以建议我在这里做错了什么。
移动var mapTo = new Content();
进入for循环。 否则,对于每个循环迭代,您都有相同的Content
实例,这些实例会被 for 循环中的分配覆盖。
public static void Process()
{
var path= @"ABC.csv";
var header = false;
var lines = System.IO.File.ReadAllLines(filePath);
var element = new List<Content>();
for (var i = 0; i < lines.Length; i++)
{
var mapTo = new Content(); //here
var t = lines[i];
if (!header)
{
header = true;
}
else
{
var data = t.Split(',');
mapTo.Key= data[0];
mapTo.Name= data[1];
mapTo.Number= data[2];
mapTo.Date= data[3];
element.Add(mapTo);
}
}
var result = element;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.