你可以在.Net 4中相对容易地做到这一点:
File.WriteAllLines(
outputFileName,
Directory.EnumerateFiles(inputDirectory, @"*.txt")
.SelectMany(file => File.ReadLines(file)));
Run Code Online (Sandbox Code Playgroud)
您可以将其提取到一个方法中:
public static void ConcatenateFiles(
string outputFileName, IEnumerable<string> inputFiles)
{
File.WriteAllLines(outputFileName, inputFiles.SelectMany(File.ReadLines));
}
Run Code Online (Sandbox Code Playgroud)
这样称呼:
ConcatenateFiles("test.out", Directory.EnumerateFiles(inputDirectory, @"*.txt"));
Run Code Online (Sandbox Code Playgroud)