一 项目说明
实训目的:字符串处理、文件读写、集合的应用
实训要求:自己先准备一个 txt 文件,文档里存有一篇英文短文。先一行行读取文件中的内容,并将一行行短文中的标点符号替换成空格,然后以空格作为划分标准,统计整个 txt 文档中每个单词出现的次数。
二 项目实现设计
在该类的主方法中定义一个双列集合,键用来存储单词,值用来存储单词的个数,定义一个字符缓冲流,用来对字符输入流进行操作,reader.readLine()用来一次读取一行文本,在定义一个字节流,用来存储把文件中的标点符号替换掉的文本,定义一个字符串,初始化null,用来临时存储一行行文本,while((ss=reader.readLine())!=null)文件一行一行的读,直到读到文件尾,用trim()和split("\\s+")方法将每一行的首尾空格去掉并以空格为分隔规则,将字符串分割成若干个子字符串存入字符串数组中,在for循环中用m.containsKey(word)方法判断集合中是否含有该单词这个键,如果不含有,就将该单词存如集合的键中,并把该键对应的值设为1,如果含有,就在该值的基础上加1。在用一个for循环,判断条件为该字符是否为标点符号,如果是,就把该标点符号替换成空格,如果不是就把原字符存如字符数组中,然后转化为字符串,写入到writer文本中,在外层循环外写入一个换行语句out.write(wordOne.getBytes());使每读完一行就换行&