乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Java案例_英漢字典

       好程序員IT 2019-05-28

      在寫代碼的時候,當鼠標懸浮在某一個單詞上面的時候,有道詞典點有時會彈出一個消息氣泡,在里面中給出關(guān)于這個單詞相關(guān)的解釋,下面給大家展示一個使用Java基礎(chǔ)語言編寫的英漢字典案例:

      實現(xiàn)功能

      輸入英文,給出對應的中文翻譯,如果沒有這個單詞沒有被收錄會有相關(guān)提示

      代碼編寫環(huán)境

      JDK1.8.0_191

      Eclipse:2019-03 (4.11.0)

      素材

      dict.txt

      字典資源文本文件,保存一些下列格式的文件,英文和翻譯之間用制表符隔開:

      Africa n. 非洲

      Aids n. 愛滋病

      America n. 美洲

      April n. 四月

      案例實現(xiàn)用到的技術(shù)

      IO流

      MapHashMap

      字符串分割

      異常處理

      代碼思路

      1、 根據(jù)字典文件路徑,創(chuàng)建file對象

      2、 判斷file對象是否為空不為空就繼續(xù),否則直接返回null

      3、 File不為空,創(chuàng)建InputStreamReaderBufferedReader對象

      4、 循環(huán)讀取字典文本中的內(nèi)容,切割得到數(shù)組,保存在map中

      5、 提示輸入單詞,查詢單詞,輸出查詢結(jié)果

      運行效果

      開始運行的提示


      查詢成功的反饋


      單詞不存在的反饋


      案例代碼

      編寫方法讀取文本中的內(nèi)容

      package com.feng.demo01;

      import java.io.BufferedReader;

      import java.io.File;

      import java.io.FileInputStream;

      import java.io.InputStreamReader;

      import java.util.HashMap;

      import java.util.Map;

      import java.util.Scanner;

      /**

       * 英漢字典案例

       * @author dushine

      */

      public class GetDict {

      public static void main(String[] args) {

      String path = "E:\\dict.txt";

      // 獲取字典中的所有內(nèi)容

      Map<String, String> dict = getText(path);

      // 判斷字典是否為空,提示輸入單詞,獲取查詢結(jié)果

      if (dict != null) {

      @SuppressWarnings("resource")

      // 獲取輸入內(nèi)容

      Scanner input = new Scanner(System.in);

      System.out.println("請輸入要查詢的單詞:");

      String word = input.next();

      // 查詢字典獲取中文,如果沒有也給出反饋

      String ret = dict.get(word);

      if (ret != null) {

      System.out.println("查詢結(jié)果:\n"+word + "" + ret);

      } else {

      System.out.println("您查詢的單詞尚未收錄,敬請期待!");

      }

      }

      }

      /**

       * 獲取字典文件中內(nèi)容

       * @param path

       * @return

       */

      private static Map<String, String> getText(String path) {

      // 可能會出現(xiàn)異常

      try {

      // 根據(jù)路徑創(chuàng)建文件對象

      File file = new File(path);

      // 判斷路徑指向的文件是否存在

      if (file.exists() && file.isFile()) {

      // 創(chuàng)建map,存儲讀取得到的內(nèi)容

      Map<String, String> dict = new HashMap<String, String>();

      System.out.println("文件路徑正確,正在解析。。。");

      // 創(chuàng)建輸入流對象

      InputStreamReader reader =

      new InputStreamReader(new FileInputStream(file), "gbk");

      BufferedReader bufferedReader = new BufferedReader(reader);

      String text = null;

      // 循環(huán)讀取文件內(nèi)容

      while ((text = bufferedReader.readLine()) != null) {

      // 切割每一行內(nèi)容,得到數(shù)組

      String[] arr = text.split("\t");

      // 把切割得到的內(nèi)容放入map

      dict.put(arr[0], arr[1]);

      }

      // 讀取結(jié)束,關(guān)閉流對象并返回結(jié)果

      reader.close();

      return dict;

      } else {

      System.out.println("字典崩潰啦,下次再來使用吧。。。");

      }

      } catch (Exception e) {

      System.out.println("字典好像出了點問題、文件內(nèi)容出錯啦。。。");

      e.printStackTrace();

      }

      // 路徑指向的不是文件或者文件不存在返回null

      return null;

      }

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多