查找任意一英文文档,统计其单词出现次数
2016-12-23 13:41
471 查看
import java.io.*; import java.util.*; class Demo { public static void main(String[] args) { File f = new File("F:\\tx.txt"); BufferedReader br = null; BufferedWriter bw = null; try { br = new BufferedReader(new FileReader(f)); bw = new BufferedWriter(new FileWriter("cha.txt")); String line = null; Map<String,Integer> map = new TreeMap<String,Integer>(); while ((line = br.readLine()) != null) { // 正则表达式(获取) String reg = "\\b[a-zA-Z]+\\b"; // 将正则表达式封装为对象 Pattern p = Pattern.compile(reg); // 将正则表达式对象和要作用的字符串匹配 Matcher m = p.matcher(line.toLowerCase());//全部变为小写 int temp =0; while (m.find()) { //System.out.println(m.group()); //将单词存入treemap,值为其出现次数 Integer value = map.get(m.group()); if (value != null) temp = value; temp++; map.put(m.group(), temp); temp = 0; } bw.write(map.toString()); } System.out.println(map); } catch (IOException e) { e.printStackTrace(); } finally { try { if (br != null) br.close(); if (bw != null) bw.close(); } catch (IOException e) { e.printStackTrace(); } } } }
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- android string.xml文件中的整型和string型代替
- Android java 与 javascript互访(相互调用)的方法例子
- android上改变listView的选中颜色
- String.intern
- Prototype源码浅析 String部分(二)
- Ruby中的String对象学习笔记
- Redis02 使用Redis数据库(String类型)全面解析
- PostgreSQL ERROR: invalid escape string 解决办法
- C#中Byte[]和String之间转换的方法
- C++中sting类的简单实现方法
- 详解C#中的string与String
- stringstream操纵string的方法总结
- 浅谈C++中的string 类型占几个字节
- 标准C++类string的Copy-On-Write技术
- C++实现string存取二进制数据的方法
- 关于C++ string和c类型字符数组的对比
- C#中string和StingBuilder内存中的区别实例分析
- 详解C++中实现继承string类的MyString类的步骤
- PHP STRING 陷阱原理说明