輸入 java.io. * ; 輸入 java.utilの。* ; 輸入java.util.Map.Entry; パブリック クラスtongjidanci { パブリック 静的 INT n = 0です。 パブリック 静的 ボイドメイン(文字列[]引数){ スキャナ入力 = 新しいスキャナ(System.in)。 文字列s; int型 COUNT = 0 ; int型。NUM = 1 ; // オブジェクトとしてFileReaderをとてFileWriterは、読み 文字列FILE1 = "Cを:\\ \\ \\デスクトップユーザーpiao.txt" 。 文字列FILE2 = "C:\\ユーザー\\デスクトップ\\ fenxijieguo.txt" 。 試します { BufferedReaderのA = 新しいをBufferedReader(新しいFileReaderの(FILE1)); BufferedWriterのB = 新しい BufferedWriterの(新しいてFileWriter(FILE2))。 CのStringBuffer = 新新のStringBuffer(); // StringBufferのにファイルの内容を しばらく((S = a.readLine())!= ヌル) { // 文字列の連結のための c.append(S); } // StringBufferの文字列に変換、小文字にすべての文字 列のM = c.toString()toLowerCaseメソッド();. // 数字と文字26の一致文字列 の文字列[] D = M。スプリット( "[^ A-ZA-Z0-9] +" ); // における地図<文字列、整数>で反復店舗を 地図<文字列、整数> = myTreeMap 新しい新しい のTreeMap <文字列、整数> (); 用(INT I = 0; d.length I <; I ++ ){ // のcontainsKey()メソッドをチェックするために使用されるかどうか特定のキーマッピングのTreeMap のiF (myTreeMap.containsKey(D [I])){ カウント = myTreeMap.get(D [I])。 myTreeMap.put(D [i]は、カウント + 1 )。 } 他の{ myTreeMap.put(D [i]は、 1 )。 } } // コンパレータによってソート実装 のMap.Entry <文字列、整数のリスト>>一覧<= 新しい新規のMap.Entry <文字列、整数>>ののArrayList < ;(myTreeMap.entrySet()) // 降順 Collections.sort(リスト、新しい新規のMap.Entry <文字列、整数>>のコンパレータ< (){ 公共 int型の比較(エントリ<文字列、整数> K1、エントリ<文字列、整数> K2){ // リターン単語がその単語の出現回数に表示されて2回以上 のリターンk2.getValue()。のcompareTo(k1.getValue( )); } }); System.out.println(「Nの出力プリNの名前を入力してください」); N- = input.nextInt(); のため(のMap.Entry <文字列、整数>のマップ:リスト){ IF(NUM <= N-){ // に指定されたファイルの内容に応じて出力 b.write( "発生回数" + NUM + "という言葉は、" + map.getKey()+ "のために出現頻度" + map.getValue()+ "倍" ); // ラップ b.newLine(); // 出力コンソールプログラム System.out.println(map.getKey()+ ":" + map.getValue());++ ; } // 出力あなたが出て 、他の BREAK 。 } // 近いファイルポインタ a.close(); b.close(); } キャッチ(FileNotFoundExceptionを電子) { System.out.println(「指定されたファイルを見つけることができません」); } キャッチ(のIOException e)の { System.out.println( "ファイルの読み取りエラー" ); } System.out.println( "出力が完了しています" ); } }
Nワードの最大数に「風と共に去りぬ」を検索
おすすめ
転載: www.cnblogs.com/xk1013/p/12152025.html
ランキング