C#如何将文件按一定行数切割?

比如有个10000行的文件,我想将它切割成10个子文件,每个文件1000行。请问怎么实现?

 string[] lines = File.ReadAllLines("1.txt");
for (int i = 0; i < 10; i++)
{
    File.WriteAllLines("1 part " + i.ToString() + ".txt", lines.Take(1000));
    lines = lines.Skip(1000).ToArray();
}

如果要按行,那么就自己一行行读,都到满足条件行数了就写一个新文件,然后清空,继续下一个。

读入10000行的文件,然后循环按要求每到1000行就输出到一个文件中。