WordCounter
import java.io.*;
import java.util.*;
/*
* Zählt die Wörter in einer Datei
* bekommt Dateinamen als Parameter
*/
public class WordCounter {
public static void main(String args[]) throws IOException {
String eingabeDatei = args[0];
BufferedReader in = new BufferedReader(new FileReader(eingabeDatei));
Map m = new TreeMap();
String s;
while ((s = in.readLine()) != null) {
// Zerlege die Zeile in Worte
String[] worte = s.split("[ \n\t,;.()+=<>!?]");
// und laufe durch alle Worte
for (int i=0; i < worte.length; i++) {
// packe das Wort in die Tabelle bzw. erhöhe seinen Zähler
// ist das Wort schon in der Tabelle?
Integer anzahl= (Integer) m.get(worte[i]);
if (anzahl != null) {
// erhöhe seinen Zähler
m.put(worte[i], new Integer(anzahl.intValue() + 1));
} else {
m.put(worte[i], new Integer(1));
}
}
}
in.close();
// gib die fertige Tabelle aus
System.out.println("Häufigkeitstabelle der Wörter");
System.out.println(m);
}
}