java读取文章计算单词个数_java统计英文单词个数程序

public class englishTest {

public static void main(String args[]) throws IOException {

BufferedReader buf= new BufferedReader(

new FileReader("d:/english.txt"));

BufferedWriter bufw= new BufferedWriter(

new FileWriter("d:/result.txt"));

StringBuffer sbuf = new StringBuffer();// 缓冲字符串

String line = null;

while ((line = buf.readLine()) != null) {

sbuf.append(line);

sbuf.append(" ");// 追加到缓冲字符串中

if (!line.isEmpty()) {// 去文本空行

bufw.newLine();

bufw.write(line);

}

}

buf.close();// 读取结束

String string1 = sbuf.toString().toLowerCase();// 转换成小写

Pattern expression = Pattern.compile("[a-zA-Z]+");// 定义正则表达式匹配单词

Matchermatcher = expression.matcher(string1);// 定义string1的匹配器

TreeMap myTreeMap 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您解答这个问题。 您可以使用Java的HashMap来统计英文单词数。具体的实现步骤如下: 1. 读取英文文本文件,可以使用Java的FileReader和BufferedReader类来实现。 2. 将读取到的英文文本按照空格和标点符号进行分割,可以使用Java的split方法来实现。 3. 遍历分割后的单词数组,将每个单词作为HashMap的key,出现的次数作为value存入HashMap。 4. 遍历HashMap的key,输出每个单词及其出现的次数。 下面是一个简单的Java代码示例,可以用来统计英文文本文件单词数: ```java import java.io.BufferedReader; import java.io.FileReader; import java.util.HashMap; import java.util.Map; public class WordCounter { public static void main(String[] args) { String fileName = "test.txt"; // 英文文本文件的路径 Map<String, Integer> wordCountMap = new HashMap<String, Integer>(); try { FileReader fileReader = new FileReader(fileName); BufferedReader bufferedReader = new BufferedReader(fileReader); String line; while ((line = bufferedReader.readLine()) != null) { String[] words = line.split("[^a-zA-Z]+"); for (String word : words) { if (word.length() > 0) { if (wordCountMap.containsKey(word)) { wordCountMap.put(word, wordCountMap.get(word) + 1); } else { wordCountMap.put(word, 1); } } } } bufferedReader.close(); for (String word : wordCountMap.keySet()) { System.out.println(word + ": " + wordCountMap.get(word)); } } catch (Exception e) { e.printStackTrace(); } } } ``` 在这个示例,我们使用了Java的FileReader和BufferedReader类来读取英文文本文件,使用了split方法来分割单词,使用了HashMap来存储单词及其出现的次数。最后遍历HashMap的key,输出每个单词及其出现的次数。 希望这个示例对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值