如何分离CSV分隔的数据并相应地存储值

本文关键字:数据 存储 分隔 何分离 分离 CSV | 更新日期: 2023-09-27 18:05:23

我有CSV格式的数据

<>之前A, B, C, D, E, F, GC、F, G, L, K, O, Fa, b, c, d, e, f, gf t、s、n, e、K、cB, F, d, e, A t m之前

我希望这些数据以以下形式存储:

<>之前A, B, C, DB, C, D, EC, D, E, FD, E, F, G...之前

当我试图按照下面的方式做时,我在中间错过了一个模式。例如:C,D,E,F

下面是我的代码:
static void Main(string[] args)
{
    FileStream fs = new FileStream("studentSheet.csv", FileMode.Open);
    StreamReader reader = new StreamReader(fs);
    List<string> subline = new List<string>();
    string line = "";
    while ((line = reader.ReadLine()) != null)
    {
        string[] splitstring = line.Split(';');
        string ft = null;
        int i =0;
        while(i <( splitstring.Length - 3)+1)
        {
            ft = splitstring[i] + "," + splitstring[i+1]
                + "," + splitstring[i+2] +","+ splitstring[i+3];
            subline.Add(ft);
            i = i + 1;
        }
    }
    foreach(string s in subline)
        Console.WriteLine(s);
    Console.ReadLine();
}

如何分离CSV分隔的数据并相应地存储值

假设您可以将其全部读取到一个名为input的大列表中,并且您不需要它的速度惊人,您可以这样做:

List<string> output = Enumerable.Range(0, input.Length - 4)
    .Select(i => String.Join(",", input.Skip(i).Take(4)))
    .ToList();