Разбиение CSV-файла на заголовки.
Здравствуйте, я пытаюсь разделить CSV по источнику данных, но сохраняю заголовки. Оригинального кода мне было -
var splitQuery = from line in File.ReadLines(@"C:\test\test1.csv") let source = line.Split(',').Last() group line by source into outputs select outputs; foreach (var output in splitQuery) { File.WriteAllLines(@"C:\test\" + output.Key + ".csv", output); }
Это сработало, однако он не включал заголовки в разделенные файлы, поэтому я попробовал это сделать -
var headerLine = File.ReadLines(@"C:\test\test1.csv"); var nHeaderLine = headerLine.Take(1); string FHeader = nHeaderLine.ToString(); var splitQuery = from line in headerLine let source = line.Split(',').Last() group line by source into outputs select outputs; foreach (var output in splitQuery) { var Foutput = FHeader + "\r\n" + output; File.WriteAllLines(@"C:\test\" + output.Key + ".csv", Foutput); }
Я, вероятно, делаю это совершенно неправильно, но я получаю две ошибки (до сих пор), и это
File.WriteAllLines(@"C:\test\" + output.Key + ".csv", Foutput);
Error 1 The best overloaded method match for 'System.IO.File.WriteAllLines(string, System.Collections.Generic.IEnumerable<string>)' has some invalid arguments C:\Users\nicoles\Documents\Visual Studio 2013\Projects\splitTest\splitTest\Program.cs 32 17 splitTest
Error 2 Argument 2: cannot convert from 'string' to 'System.Collections.Generic.IEnumerable<string>' C:\Users\nicoles\Documents\Visual Studio 2013\Projects\splitTest\splitTest\Program.cs 32 71 splitTest
Не мог бы кто-нибудь помочь мне, пожалуйста
Что я уже пробовал:
var headerLine = File.ReadLines(@"C:\test\test1.csv"); var nHeaderLine = headerLine.Take(1); string FHeader = nHeaderLine.ToString(); var splitQuery = from line in headerLine let source = line.Split(',').Last() group line by source into outputs select outputs; foreach (var output in splitQuery) { var Foutput = FHeader + "\r\n" + output; File.WriteAllLines(@"C:\test\" + output.Key + ".csv", Foutput); }