词频计算器 选择一个文本文件in.txt,用户输入一个单词,计算该文件中这个单词出现的次数,并显示到界面上。 比如,in.txt文件中内容为“The emergence of semantic sensor Web provides a way for realizing data i
时间: 2024-02-24 16:56:01 浏览: 99
统计指定的文本文件(英文)中,每个单词的出现频率,输出按字典序排列的单词频度表。
好的,这是一个文本文件中计算单词频率的Java代码示例:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class WordFrequencyCounter {
public static void main(String[] args) throws IOException {
// 读取文本文件
String fileName = "in.txt";
BufferedReader reader = new BufferedReader(new FileReader(fileName));
String line;
StringBuilder sb = new StringBuilder();
while ((line = reader.readLine()) != null) {
sb.append(line);
sb.append(" ");
}
reader.close();
String text = sb.toString();
// 计算单词频率
Map<String, Integer> frequencyMap = new HashMap<>();
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个单词:");
String word = scanner.nextLine();
String[] words = text.split("\\s+");
for (String w : words) {
if (w.equalsIgnoreCase(word)) {
Integer frequency = frequencyMap.getOrDefault(w, 0);
frequencyMap.put(w, frequency + 1);
}
}
// 输出结果
Integer frequency = frequencyMap.get(word);
if (frequency == null) {
System.out.println("单词 \"" + word + "\" 在文件中没有出现过。");
} else {
System.out.println("单词 \"" + word + "\" 在文件中出现了 " + frequency + " 次。");
}
}
}
```
您可以将这段代码复制到一个Java文件中,并将文件名改为WordFrequencyCounter.java。在程序运行时,它会提示您输入一个单词,并计算该单词在文本文件中出现的次数。请注意,程序默认读取的文本文件名为in.txt,如果您的文件名不同,请相应地修改代码中的文件名。
阅读全文