資源簡介
1. 讀取文檔并分詞。要求給定一篇.txt英文文檔,計算機讀入并統計該篇文章由哪些詞組成,按字母順序輸出出現過的詞已經每個詞的出現頻率。
代碼片段和文件信息
import?java.util.*;?
import?java.io.*;?
public?class?CountOccurrenceOfWords?{?
public?static?void?main(String[]?args)?throws?Exception?{?
Map?hashMap?=?null;?
BufferedReader?infile?=?null;?
StringTokenizer?st?=?null;?
String?filename?=?“Test.txt“;?
String?string;?
String?file?=?null;?
//打開一篇文章,名字是?Test.txt?.
infile?=?new?BufferedReader(new?FileReader(filename));?
while?((string?=?infile.readLine())?!=?null)?{?
file?+=?string;//都出整篇文章,存入String中。
}?
hashMap?=?new?HashMap();?
//?取出文章中的單詞,““?“.“?“!“?“?“?為各個單詞的分界符。
st?=?new?StringTokenizer(file?“?.!“);?
while?(st.hasMoreTokens())?{?
String?key?=?st.nextToken();?
//public?static?char?toLowerCase(char?key);
if?(hashMap.get(key)?!=?null)?{?
int?value?=?((Integer)?hashMap.get(key)).intValue();?
value++;?
hashMap.put(key?new?Integer(value));?
}?else?{?
hashMap.put(key?new?Integer(1));?
}?
}?
//按照單詞的字母次序輸出。
Map?treeMap?=?new?TreeMap(hashMap);?
Set?entrySet?=?treeMap.entrySet();?
Iterator?iterator?=?entrySet.iterator();?
while?(iterator.hasNext())?{?
System.out.println(iterator.next());
}?
}?
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2014-03-06?16:02??實驗1\1\.classpath
?????文件????????377??2014-03-06?16:02??實驗1\1\.project
?????文件????????629??2014-03-06?16:02??實驗1\1\.settings\org.eclipse.jdt.core.prefs
?????文件???????2460??2014-03-06?16:30??實驗1\1\bin\CountOccurrenceOfWords.class
?????文件???????1231??2014-03-06?16:30??實驗1\1\src\CountOccurrenceOfWords.java
?????文件????????299??2014-03-06?16:52??實驗1\1\Test.txt
?????文件??????96256??2014-03-06?16:51??實驗1\實驗1.doc
?????目錄??????????0??2014-03-06?16:02??實驗1\1\.settings
?????目錄??????????0??2014-03-06?16:02??實驗1\1\bin
?????目錄??????????0??2014-03-06?16:02??實驗1\1\src
?????目錄??????????0??2014-03-06?16:03??實驗1\1
?????目錄??????????0??2014-03-06?16:59??實驗1
-----------?---------??----------?-----??----
???????????????101553????????????????????12
評論
共有 條評論