读取csv 文件 c#
标签:return turn odi spl continue get substr oid adc
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ReadCSV
{
class Program
{
public static void Main(string[] args)
{
List list = ReadCSV(@"?C:\Users\Administrator\Source\Repos\ReadCSV\ReadCSV\bin\Debug\EE4.csv");
}
public static List ReadCSV( string path)
{
List list = new List();
StreamReader sr = new StreamReader("EE6.csv", Encoding.UTF8);
String line;
while ((line = sr.ReadLine()) != null)
{
if (line.Contains("DisplayName"))
continue;
list.Add(readlineToContract(line, 15));
}
return list;
}
public static Contract readlineToContract(string line, int count)
{
Contract contract = new Contract();
string[] strArray = line.Split(‘,‘);
if (count == strArray.Count())
{
contract.Name = strArray[4];
contract.DisplayName = strArray[5];
contract.Type = strArray[8];
contract.Category = strArray[9];
contract.State = strArray[10];
contract.Stage = strArray[11];
}
else
{
//deal with doublue " contains ,
Liststring> temp = new Liststring>();
for (int i = 0; i )
{
if (line[i] != ‘"‘)
{
int index = line.IndexOf(",", i);
if (index == -1)
temp.Add(line.Substring(i));
else
{
temp.Add(line.Substring(i, index - i));
i = index;
}
}
else if (line[i] == ‘,‘)
{
temp.Add(string.Empty);
}
else if (line[i] == ‘"‘)
{
int index = line.IndexOf("\"", i+1);
temp.Add(line.Substring(i+1, index - i-1));
i = index;
}
}
if (line.EndsWith(",")) temp.Add(string.Empty);
contract.Name = temp[4];
contract.DisplayName = temp[5];
contract.Type = temp[8];
contract.Category = temp[9];
contract.State = temp[10];
contract.Stage = temp[11];
}
return contract;
}
}
class Contract
{
public string Name { set; get; }
public string DisplayName { set; get; }
public string Type { set; get; }
public string Category { set; get; }
public string State { set; get; }
public string Stage { set; get; }
}
}
读取csv 文件 c#
标签:return turn odi spl continue get substr oid adc
原文地址:https://www.cnblogs.com/skywss27/p/9949722.html
评论