C# 源码计数器
设计背景
编程工作中,有些文档需要填写代码量,例如申请软件著作权。查阅相关资料之后,编写了这个小程序。
设计思路
主要思路为分析项目文件,根据项目文件查找代码文件,然后遍历代码文件进行分析
相关技术
- 抽象类
- 文件操作
- 字符串解析
项目结构
-
抽象类
- FileAnalyser 文件分析类
负责校验文件,并定义分析文件方法
- ProjectDocument 项目工程类
负责定义项目文件属性及方法
-
实体类
- FileEntity 文件实体类
负责存储代码文件信息
- ProjectFileEntity 项目工程实体类
负责存储项目文件信息
- LineEntity 代码行实体类
负责存储代码行信息
-
集合类
- FileCollection 文件实体集合
负责文件集合统计数据
-
功能类
- CSProjectDocument C#项目工程类
继承ProjectDocument类,负责分析C#项目工程文件
- CSFileAnalyser cs文件分析类
继承FileAnalyser,负责分析cs文件
代码示例
调用方法
ProjectDocument mDocument = ProjectDocument.Create(this.txtFileName.Text);
if (mDocument == null)
{
MessageBox.Show("Analyse for " + this.txtFileName.Text + " error !");
return;
}
mDocument.ClearResults();
mDocument.AnalyseAllFile();
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥