计算文本文件中的行数

时间:2011-03-02 08:17:19

标签: c# winforms

我在C#编码并使用Windows窗体。 我有一个文本文件,想要计算其中的所有行。

彼得; 25

约翰; 31

简; 22

这就是三条线,我想以它们为例。

3 个答案:

答案 0 :(得分:6)

最好的方法是使用类似的东西:

var count = File.ReadLines("file.txt").Count();

这只适用于.NET 4,但一次只读一行。如果您足够高兴一次性将整个文件加载到内存中,您可以使用:

var count = File.ReadAllLines("file.txt").Length;

请注意,如果文件很大(或者它在网络驱动器上等),这可能需要很长时间,在这种情况下,您需要在UI线程上执行此操作。

答案 1 :(得分:2)

如果文件不是太大,您可以这样做:

File.ReadAllLines(filePath).Length;

(这将分配整个文件,因此请确保性能不是问题)

答案 2 :(得分:1)

        string fileName = @"X:\Testfolder\countthis.txt";
        int lineCount = 0;

        FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);

        StreamReader reader = new StreamReader(fs);
        Assert.Fail();

        while (reader.ReadLine() != null)
            lineCount++;
        return lineCount;