C#程序员统计自己的代码行数
很多程序员都以自己写的代码的行数作为自己程序员阅历的一个标志,如何统计呢,以下是具体内容。
小编,已经快学了两年编程了。昨天突发奇想,想统计下这些年到底写过多少行代码,于是做了一个这个小程序来统计代码行数。老规矩,先上图。
比较惭愧,写了两年只有2万多行。那我们还是进入下一项吧。
界面搭建我也不说了,我就讲一下思路和核心代码,最后附上源代码。Life_Programmer、Serch_Files。
思路:我们点击刷新按钮,他会弹出一个小窗口让我们选择要搜索的区域。这个原理在我的C#游戏进程杀手的随笔讲过了,这里就不赘述了。
关于这个搜索小窗口,我觉得适用范围很广,我是把它做成了一个.dll文件引入到我们这个主程序的。这个小窗口我也会附上源码在本篇随笔。
那我们这次主要讲讲和上一次不一样的地方。
既然我们把它这个小窗口封装起来了,那么我们就要给予它最大的灵活性。目的:让它搜索出我们想要的东西。
那么达成这个目的,我们需要明确两点:
1)要搜索文件的名字。(或者说要搜索的字段)
2)要搜索文件的类型。(文件名,还是后缀名)
所以为了完成这两点,我们需要将将要搜索的字段封装在这个小窗体里,设置一个属性对外提供访问接口。
List<string> SerchName = new List<string>(); //要查找的字段
public List<string> SerchName1
{
get { return SerchName; }
set { SerchName = value; }
}
//设置查找文件类型
private int i;
public int I
{
get { return i; }
set { i = value; }
}
将这两个字段封装好,在我们的主窗体内对其赋值即能提供其最大的灵活性。
那么接下来我们重点来聊聊子窗体中FinleFile类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace Serch_File
{
class FindFile
{
public List<string> lst1 = new List<string>();
public List<string> getFile(string path, string extName, int i)//创建一个List<FileInfo>类型的函数
{
getdir(path, extName, i);//传入路径、搜索的字段 、将要搜索的类型
return lst1;
}
private void getdir(string path, string extName, int i)
{
try
{
//获取文件夹列表
string[] dirs = Directory.GetDirectories(path); DirectoryInfo fdir = new DirectoryInfo(path);
FileInfo[] file = fdir.GetFiles();
//当前目录文件或目录不为空
if (file.Length != 0 || dirs.Length != 0)
{
foreach (FileInfo f in file)
{
switch (i)
{
case 0: if (extName == f.Name) //根据文件名匹配上
{
lst1.Add(f.Name);
} break;
case 1: if (extName == f.Extension) //根据后缀名匹配上
{
lst1.Add(f.FullName);
} break;
}
}
foreach (string d in dirs)
{
getdir(d, extName, i);//递归
}
}
}
catch
{
}
}
}
}
大家注意在24行遍历文件夹列表时,我们会在盘符下面遍历到一个零时文件夹,其中索引为0的值似乎是一个乱码,其实不然这是我们盘符下的系统隐藏文件夹。大家可以不管它。
那最后我们来谈谈怎么把一个窗体封装成dll文件,供其它项目引用。
1、生成dll文件
右键我们的项目名称,点击进入属性。
把输出类型改为类库,然后点击生成解决方案。就会在本程序的Debug目录下生成一个dll文件。
2、将dll引入目标项目
把我们生成的dll文件先复制拷贝到目标项目的debug目录下。然后右击引用,找到添加引用。
点击浏览找到我们的dll文件。
再在我们的代码中导入命名空间
然后就成功了。
试试:
ok,没问题。
最后希望各位能再完善完善我们的搜索小功能。
以上就是关于统计自己写了多少行代码的一个方法,作为程序员,赶快统计一下吧。
上一篇:c# winform treelistview的使用(treegridview)实例详解
栏 目:C#教程
下一篇:C#中使用Join与GroupJoin将两个集合进行关联与分组
本文标题:C#程序员统计自己的代码行数
本文地址:https://www.xiuzhanwang.com/a1/C_jiaocheng/5354.html
您可能感兴趣的文章
- 01-1010个C#程序员经常用到的实用代码片段
- 01-10C#程序员最易犯的编程错误
- 01-10C#实现用户自定义控件中嵌入自己的图标
- 01-10C#实现属于自己的QQ截图工具
- 01-10C# 绘制统计图大全(柱状图, 折线图, 扇形图)
- 01-10为IObservable实现自己的运算符(详解)
- 01-10C#编程实现统计文件夹内文件和隐藏文件的方法示例
- 01-10C#程序员应该养成的程序性能优化写法
- 01-10C#设计模式之Mediator中介者模式解决程序员的七夕缘分问题示例
- 01-10利用Aspose.Cells和Excel模板导出统计数据
阅读排行
本栏相关
- 01-10C#通过反射获取当前工程中所有窗体并
- 01-10关于ASP网页无法打开的解决方案
- 01-10WinForm限制窗体不能移到屏幕外的方法
- 01-10WinForm绘制圆角的方法
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频播放器左下角滚动新
- 01-10C#停止线程的方法
- 01-10C#实现清空回收站的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的
- 01-10C#实现读取注册表监控当前操作系统已
随机阅读
- 01-11ajax实现页面的局部加载
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10SublimeText编译C开发环境设置
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法实例总结
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 04-02jquery与jsp,用jquery
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10使用C语言求解扑克牌的顺子及n个骰子