Java实现的词频统计——单元测试】的更多相关文章

前言:本次测试过程中发现了几个未知字符,这里将其转化为十六进制码对其加以区分. 1)保存统计结果的Result文件中显示如图: 2)将其复制到eclipse环境下的切分方法StringTokenizer中却没有显示: 复制前: 复制后: 前后看似没有任何变化: 3)改动后的统计结果: 因此为了检测这个字符做了一个将其转化为十六进制码的小程序: String t = "\0"; String s = "\0"; byte[] bbb = t.getBytes(); i…
本次将原本控制台工程迁移到了web工程上,依旧保留原本控制台的版本. 需求: 1.把程序迁移到web平台,通过用户上传TXT的方式接收文件: 2.在页面上给出链接 (如果有封皮.作者.字数.页数等信息更佳)或表格,展示经典英文小说词频统计结果: 3.支持用户自定义单词分隔符: 4.词汇范围对比(额外项). 实现: 1.迁移至web工程中,支持用户手动选择txt文件上传: 2.用户提交之后,会在后台运行词频统计函数,并且将统计结果的前10项打印到屏幕上: 3.统计结果文件Result.txt可以进…
本次改进是在原有功能需求及代码基础上额外做的修改,保证了原有的基础需求之外添加了新需求的功能. 功能: 1. 小文件输入——从控制台由用户输入到文件中,再对文件进行统计: 2.支持命令行输入英文作品的文件名: 3.支持命令行输入存储有英文作品文件的目录名,批量统计: 4.从控制台读入英文单篇作品,重定向输入流. 实现: 1.判断输入方式,如果从命令行传递参数则直接对文件进行统计:如果未传递参数,其方式同控制台相同,由用户从标准输入流输入到文件,再对文件进行词频统计.这里如果传入文件路径时会对其是…
昨日有个中文词频统计的需求, 百度一番后, 发现一大堆标题党文章, 讲的与内容严重不符, 这里就简单记录下自己实现的流程吧! 与英文单词的词频统计不同, 中文的难点在于如何分词, 不过好在有许多优秀的现成库供调用,这里就使用了 ansj_seg 插件. 首先添加依赖: 下载jar 访问 http://maven.nlpcn.org/org/ansj/ 最好下载最新版 ansj_seg/ 同时下载nlp-lang.jar 需要和ansj_seg 配套..配套关系可以看jar包中的maven依赖,一…
要求: 1.读取文件: 2.记录出现的词汇及出现频率: 3.按照频率降序排列: 4.输出结果. 概要: 1.读取的文件路径是默认的,为了方便调试,将要统计的文章.段落复制到文本中即可:2.只支持英文:3.会按照词汇出现的频率降序排列. 实现: 1.使用FileReader.BufferedReader读取文件: 2.采用StringTokenizer进行字符分割: 3.用hashmap保存统计数据: 4.自定义一个类用来实现按value排序: 5.输出结果. 默认路径文件: String fil…
使用Eclipse 集成的Junit进行单元测试.单元测试的核心包括断言.注解. 测试代码如下: @BeforeClass // 针对所有测试,只执行一次,且必须为static void public static void setUpBeforeClass() throws Exception { System.out.println("in BeforeClass================"); } @AfterClass // 针对所有测试,只执行一次,且必须为static…
测试项目 博客文章地址:[http://www.cnblogs.com/jx8zjs/p/5862269.html] 工程地址:https://coding.net/u/jx8zjs/p/wordCount/git ssh://git@git.coding.net:jx8zjs/wordCount.git 测试用例: 1. My English is very very pool 2.地址 [http://www.gutenberg.org/files/2600/2600-0.txt] 待测单元…
要想完成一个中文词频统计功能,首先必须使用一个中文分词器,这里使用的是中科院的.下载地址是http://ictclas.nlpir.org/downloads,由于本人电脑系统是win32位的,因此下载的是 NLPIR-JNI-发布包.zip,解压之后导入myeclipse,这里我并没有使用该项目自带的Test,而是根据该网站上提供的API进行开发.首先要做的是改写nlpir.properties中的dll_or_so_path属性,要改成项目中的NLPIR_JNI.dll的绝对路径.下面贴出我…
需求概要 原需求 1.读取文件,文件内包可含英文字符,及常见标点,空格级换行符. 2.统计英文单词在本文件的出现次数 3.将统计结果排序 4.显示排序结果 新需求: 1.小文件输入. 为表明程序能跑 2.支持命令行输入英文作品的文件名 3. 支持命令行输入存储有英文作品文件的目录名,批量统计. 4. 从控制台读入英文单篇作品 程序输入: 1.控制台输入文本 2.英文文本文件 3.英文目录,目录下包含单个或多个英文文本文件 程序输出: 1.英文单词在本文件或控制台输入中的出现的次数,按出现次数排序…
java效能分析可以使用JProfiler 词频统计处理的文件为WarAndPeace,大小3282KB约3.3MB,输出结果到文件 在程序本身内开始和结束分别加入时间戳,差值平均为480-490ms. 结果如下: 1.统计概要 2.CPU运行曲线:程序运行高峰可以达到21.44%,原因可能的添加不同单词到map中之前对字符处理导致的,第二高峰可能是按词频序排序导致 3.内存占用情况:char数组占用较大,其原因也是读入文件进行处理必须的.String和StringBuffer,StringBu…