之前没写过博客,为了软工作业才开的博客。

Word Frequency程序,代码不难。

预计时间1小时,实际用时1.5小时(主要是编码探测部分费了时间)。

主要使用了

1.单词类Word

2.单词库类(使用KeyedCollection)

3.分词部分用的是Regex类

3.文件搜索也用了Regex

4.采用了CodeProject的一个编码探测的封装类,封装了MLang接口的相关编码探测函数。

 

性能分析一直出错,家里的电脑业装不上2012,回学校再补充。

后来性能分析成功了,下面是图片:

Individual Project: Word Frequency

 

可以看出探测代码和正则表达式匹配占了主要时间,

Individual Project: Word Frequency

 

因此最终还是决定取消编码探测部分,改为只检测bom,这样可以判断常用的unicode(包括Big Endian),utf8和ansi,其他非ansi代码页的支持取消了,后来修改和测试陆续用了2小时。

测试数据是磁盘中的全部文件等,还有一个100多M的电子书文件夹和作业要求本身等。

发现程序访问某些系统目录时会出现权限不足造成的失败,因此采用了微软未公开的提权函数RtlAdjustPrivilege获取BackupPrivilege权限,就可以访问所有目录了。

相关文章:

  • 2021-12-11
  • 2022-01-10
  • 2022-12-23
  • 2021-05-18
  • 2021-11-08
  • 2021-12-18
猜你喜欢
  • 2021-10-05
  • 2021-09-17
  • 2022-03-06
相关资源
相似解决方案