我在解析或阅读CSV时遇到了一些问题。我想实现在CSV文件中选择所选值,因为它没有标题。然后我想将所选项目存储到数据库中。
示例数据:
Row 1: "","",John,"",28,"","",
Row 2: "",Doe,"","USA",
Row 3: Devoper,"","","ABC Company",
Row 4: "","",10,000,"2 Years",
Row 5: "C#","LINQ","ASP.NET MVC",
我想这样选择:
Row 1: John,28
Row 2: Doe, USA
Row 3: Developer, ABC Company
Row 4: 10,000, 2 Years
Row 5: C#, LINQ, ASP.NET MVC
我们假设类结构是这样的:
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
public string Address { get; set; }
public string Position { get; set; }
public double Salary { get; set; }
public string YearWorked { get; set; }
public string Skills { get; set; }
答案 0 :(得分:0)
LINQ是一个很棒的快速工具。但是像所有快速工具一样,它有限制。我通常认为解析CSV超出了这些限制。
您应该使用正确的CSV解析器。对于LINQ来说,有许多特殊情况(如Multiline字段,转义逗号)都可以实现。即使你可以,性能和内存使用仍然很糟糕。
这是我经常链接的CSV解析器。它可能是您正在寻找的机器人吗? http://www.codeproject.com/Articles/9258/A-Fast-CSV-Reader