C#第一次作业

计算目录下指定类型文件(.cs, .java)的个数、每个文件的总行数、空行数、注释行数、代码行数

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication4
{
    class Program
    {
        public static int allLine=0;//总代码
        public static int blankLine=0;//空白行
        public static int commentLine=0;//注释行
        public static int codeLine=0;//代码行
        static void CountLine(string file) 
        {
            FileStream stream = new FileStream(file, FileMode.Open); //读取文件
            StreamReader reader = new StreamReader(stream);
            string line = reader.ReadLine();
            while (line != null)  //判断是什么行
            {
                if (line.Trim() != "" && !(line.Trim().StartsWith(@"//")))  //代码行
                {
                    codeLine++;
                }
                else if (line.Trim().StartsWith(@"//") || line.Trim().StartsWith(@"///")) //注释行
                {
                    commentLine++;
                }
                else //空白行
                {
                    blankLine++;
                }
                line = reader.ReadLine();
            }
            reader.Close();
        }
        static void Main(string[] args)
        {
            Console.WriteLine("请输入文件路径:");
            String path = Console.ReadLine();
            CountLine(path);
            Console.WriteLine("总行数为{0}",blankLine + commentLine + codeLine);
            Console.WriteLine("空行数为{0}",blankLine);
            Console.WriteLine("注释行数为{0}",commentLine);
            Console.WriteLine("代码行数为{0}",codeLine);
            Console.WriteLine("请输入任意键退出");
            Console.ReadKey();
        }
    }
}

C#第一次作业_第1张图片

你可能感兴趣的:(C#第一次作业)