201671010456-張瓊 實驗二 詞頻統計軟件項目報
阿新 • • 發佈:2019-03-19
found while 文件 entry 顯示 ade new 能夠 style
一、需求分析
1.程序要能夠讀入英文文本,並且要求此文本不能為空。
2.程序能容納的英文單詞要在10萬以上。
3.程序要能輸入想查找的一個或者多個英文單詞,並且統計出它出現的次數,並且把它的統計結果以柱狀圖的形式顯示出來。
4.程序運行結果自動顯示該文本的單詞總數和每個單詞出現的頻率。把單詞數和詞頻數按照字典順序輸出到文件result.txt。
5.當在鍵盤輸入高頻詞的個數k後,進行程序統計功能運行,之後要按照詞頻數降序排列顯示在k之前的每個單詞的數量和單詞。
二、功能設計
基本功能:能夠讀入單詞並且統計出總詞數,並能統計每個單次出現的頻率。因為對語言並不是特別熟悉,所以最後的統計功能和柱狀圖並沒有實現。
三、設計實現
-
運行環境:windows環境 eclipse軟件
- 流程圖
- 程序設計:定義一個主類main,首先讀取文件,文件的位置要設置成相對位置。然後進行存儲,統計單次出現的頻率及其總詞數。用叠代遍歷關閉流。文件的相對位置存儲中,上傳的步驟需要清楚。首先新建一個文件,在裏面添加進去要掃面統計的文本。
四、測試運行
五、代碼片段展示
相對路徑的展示
try{ //使用流的方法讀取文件 BufferedReader br = new BufferedReader(new FileReader( "result.txt"));
while(it.hasNext()){ Map.Entry<String, Integer> entry = it.next();//獲取map中每一個鍵值 //輸出結果 System.out.println(entry.getKey()+" "+entry.getValue()); br.close();//關閉流 } System.out.println("單詞總數為:"+count+"個"); }catch(FileNotFoundException e){// e.printStackTrace(); }catch(IOException e){ e.printStackTrace(); }
六、總結
在本次作業中,遇到的困難很多,花費的時間也很多,因為對語言的不熟悉,所以參考了網上的代碼。剛剛拿到這個作業時不會做,翻書復習了java,對個人項目的流程有了一定的掌握。但是柱狀圖的功能並沒有實現。嚴格意義上來說並沒有完成本次作業,只實現了最簡單的單詞總數統計和詞頻統計。 裏面涉及到了好多函數的應用,有很多都是不會的,意識到數據結構的重要性,而自己對這部分知識的掌握還僅僅停留在做題上。除此之外,對GitHup的操作流程也熟悉了。
七、psp展示
階段/時長 計劃總共需要的完成時間(min) 實際完成需要的時間(min) 計劃 10 10 估計需要時間,並計劃大致工作步驟 10 10 開發 90 150 需求分析 15 20 生成設計文檔 30 20 設計復審 5 5 代碼規範 5 5 具體設計 10 15 具體編碼 90 240 代碼復審 10 5 測試 10 10 報告 5 3 測試報告 5 5 計算報告量 10 10 總結,並提出改進計劃 20 25 源代碼地址:https://github.com/ZhangQiong1/program1
201671010456-張瓊 實驗二 詞頻統計軟件項目報