201671010436王雪剛 詞頻統計軟件項目報告

實驗二 軟件工程個人項目

實驗要求鏈接:https://www.cnblogs.com/nwnu-daizh/p/10487329.html

 


 

  • 需求分析:

按照《構建之法》第2章中2.3所述PSP流程,使用JAVA編程語言,獨立完成一個英文文本詞頻統計的軟件開發。
1.程序可讀入任意英文文本文件,該文件中英文詞數大於等於1個。
2.程序需要很壯健,能讀取容納英文原版《哈利波特》10萬詞以上的文章。
3.指定單詞詞頻統計功能:用戶可輸入從該文本中想要查找詞頻的一個或任意多個英文單詞,運行程序的統計功能可顯示對應單詞在文本中出現的次數和柱狀圖。
4.高頻詞統計功能:用戶從鍵盤輸入高頻詞輸出的個數k,運行程序統計功能,可按文本中詞頻數降序顯示前k個單詞的詞頻及單詞。
5.統計該文本所有單詞數量及詞頻數,並能將單詞及詞頻數按字典順序輸出到文件result.txt。
總結來說,該項目需求分析爲程序可讀入任意10萬詞以內的英文文本文件,可查找文件並可統計對應單詞在文本中出現的次數和柱狀圖,可以根據頻率出現前K個單詞的詞頻,最後還可以將統計結果輸出到result.txt

 


  

  • 功能設計.
    1.讀入的文件放在src下,即word.txt放入src下;
    2.輸入需要查找的英文單詞,顯示出該單詞出現的次數以及柱狀圖;
    3.程序可以按照文中詞頻數降序顯示詞頻以及單詞;
    4.程序可以統計整個文本字符流中的單詞數並將結果輸出到result.txt中,文件存放在src下。

 


  • 設計實現:

1.利用BufferedReader讀取文件程序讀取需要統計的文件;
2.用戶可以輸入想要查詢的英文單詞,將會顯示出該次在文件中出現的次數等;
3.排序代碼可以對用戶查詢的英文單詞按照降序的的方式進行排列,在設計排序的時候,用Map按鍵排序,將字母從a到z對所分割的單詞進行整理,採用按值排序(sort by value),對整體單詞根據單詞頻數進行排序。
4.在查詢結束後將單數查詢結果輸出並保存在相應文件夾下。


  •  測試運行:


部分代碼:

 


  • 實驗總結:

  通過本次實驗,瞭解了軟件開發的主要流程,因爲之前對java語言掌握很少,因此在開發過程中遇到很多問題,通過上網查閱資料,對java知識有了初步的認識,在編寫代碼時發現所有的程序模塊都是相互獨立的,但是之間也存在一定的關係,在開發當中也有很多功能未能實現,在以後的學習過程當中,我會認真學習計算機語言,掌握更多的技巧,爭取開發出更好的有質量的軟件。

  • psp:

 


  • GitHub源代碼地址:

https://github.com/201671010436/wangxuegang

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章