博客基本信息
这个作业属于哪个课程 | 24软件技术基础 |
---|---|
这个作业的目标 | 实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符数,单词数,句子数。 |
姓名-学号 | 包珂凡-2022329301040 |
作业Gitee地址 | WordCount作业Gitee地址 |
编者按:本文仅介绍该开源项目的使用和编程中遇到的问题。阅读源码请点击上方作业Gitee地址。如对程序及代码有任何疑问,请在Gitee上提交Issue文件
一、项目基本情况及相关指令用法
(一)项目综述
该项目旨在实现一个命令行文本计数统计程序。
基础功能:能正确统计导入的纯英文.txt
文本中的字符数,单词数,句子数。
拓展功能:
(1)能正确统计导入的.c
文件的代码行。
(2)支持多文件统计
(3)可变指令个数
(4)指令语法检查
(5)文件类型匹配检查
(二)程序指令结构
本程序提供单指令和双指令两种指令输入模式
(1)单指令模式下指令结构解析
指令结构:-f <filepathlist>
此处的<filepathlist>
可以为多个文件
统计对象:输入指令-f <filepathlist>
后,程序默认输出三个统计量,分别为字符数,单词个数及句子数。
(2)双指令模式下指令结构解析
指令结构:-c -f <filepathlist>
统计对象:仅统计符合条件的代码文件中代码的行数
(三)指令语法检查---提示类型及实际运行时的截图
(1) Hint:Command -f Missing,Please Input Again.
遇到该报错,建议:检查原指令是否缺少单独-f
指令,重新输入代码。
(2) Hint:No File to Analyse
遇到该报错,建议:检查是否将-f
指令打在了指令末尾,重新输入代码。
(3)Hint:Syntax Problem
遇到该报错,建议:检查指令,可能有多处指令错误,建议详细阅读本节第二部分的指令结构解析部分。
二、程序运行截图(含无法打开文件时的报错界面)
三、函数单元测试
注:此单元测试的源文件和可执行程序位于仓库的develop
分支下UnitTest
子文件夹内
四、性能分析及函数调用截图
五、心得体会
(1)熟练使用了Git这个版本管理工具,熟练使用了Git指令。试水了一下多分支开发,标签提交,发行版制作等操作,为以后的多人代码协作积累了宝贵经验。
(2)在实现彩色字符输出时,先后尝试了不同的实现方法
一开始,我只是觉得黑白的显示输出对于报错而言,可能不是特别醒目,脑子里最先想到的利用Win32 API
中的SetConsoleTextAttribute
函数,不过,由于我的命令行窗口是PowerShell
,而Powershell
窗口的颜色并不是上述函数中给定的标准颜色,所以,我在网上学习到了不借助外部第三方库,仅通过打印ANSI
转义字符的方式进行字体颜色的更改。在决定走"ANSI
"路线后,又通过查找资料及自行试错,找到了避免ANSI
在命令行窗口乱码的解决方案。