using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace 学习
{
class 选择一个目录中所有项目
{
/// <summary>
/// 统计当前目录和子目录的行数
/// </summary>
/// <param name="directory"></param>
/// <returns></returns>
public static int DirectoryCountLines(string directory)
{
int lineCount = 0;
//统计当前目录的文件
foreach(string file in Directory.GetFiles( directory,"*.cs"))
{
lineCount+=Countlines(file);
}
//统计子目录的文件
foreach (string subFile in Directory.GetDirectories(directory))
{
lineCount += Countlines(subFile);
}
return lineCount;
}
/// <summary>
/// 统计行数
/// </summary>
/// <param name="file"></param>
/// <returns></returns>
public static int Countlines(string file)
{
string line = string.Empty;
int lineCount = 0;
FileStream Stream = new FileStream(file, FileMode.Open);
StreamReader read = new StreamReader(Stream);
line = read.ReadLine();//把第一行赋给line
while(line.Trim()!=null)
{
lineCount++;
line = read.ReadLine();
}
Stream.Close();
read.Close();
return lineCount;
}
}
}