我有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();
}
假设您可以将其全部读取到一个名为input
的大列表中,并且您不需要它的速度惊人,您可以这样做:
List<string> output = Enumerable.Range(0, input.Length - 4)
.Select(i => String.Join(",", input.Skip(i).Take(4)))
.ToList();