weiyun

Individual Project: Word Frequency

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

Word Frequency程序,代码不难。

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

主要使用了

1.单词类Word

2.单词库类(使用KeyedCollection)

3.分词部分用的是Regex类

3.文件搜索也用了Regex

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

 

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

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

 

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

 

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

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

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

posted on 2012-09-24 00:22  weiyun  阅读(...)  评论(...编辑  收藏

My Links

Blog Stats