Этот код используется выше для .Net 4.0, но совместим с .Net 2.0 (для текстовых файлов)
using (var output = new StreamWriter("D:\\TMP\\output"))
{
foreach (var file in Directory.GetFiles("D:\\TMP", "*.*"))
{
using (var input = new StreamReader(file))
{
output.WriteLine(input.ReadToEnd());
}
}
}
Обратите внимание, что при этом будет прочитан весь файл в памяти одновременно. Это означает, что большие файлы приведут к использованию большого количества памяти (и если недостаточно памяти, это может привести к сбою всего вместе).