<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    march alex's blog
    hello,I am march alex
    posts - 52,comments - 7,trackbacks - 0
    在之前我寫過一個英漢翻譯的java小程序EnglishChineseTranslater,今天在原來的基礎(chǔ)上加了一些改進。
    TranalateMaster類用于翻譯一個文件內(nèi)的所有單詞。
    通過之前講到的文件操作進行文件內(nèi)容的讀取,再通過StringTokenizer來分詞,最后一個一個的翻譯。
    這里有一個優(yōu)化,就是通過HashMap來去重,這樣可以優(yōu)化文件中一些單詞重復(fù)出現(xiàn)所消耗的時間。translateAll函數(shù)翻譯并直接輸出,translateAllLocal函數(shù)翻譯并保存到本地。
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.util.HashMap;
    import java.util.StringTokenizer;


    public class TranslateMaster {
        private static HashMap<String, String> map = null;
        
        public static void getWords(String filename) throws Exception {
            map = new HashMap<String, String>();
            BufferedReader reader = new BufferedReader(new FileReader(filename));  
            String line = null;
            while((line = reader.readLine()) != null){
                StringTokenizer st = new StringTokenizer(line, ",.-!? \t");
                while(st.hasMoreElements()) {
                    String key = st.nextToken();
                    if(map.containsKey(key) == false) {
                        try {
                            String value = EnglishChineseTranslater.getWordName(key) + ": " + EnglishChineseTranslater.getTranslation(key);
                            map.put(key, value);
                        } catch (Exception e) {
                            continue;
                        }
                    }
                }
            }
            reader.close();
        }
        
        public static void translateAll(String filename) throws Exception {
            getWords(filename);
            BufferedReader reader = new BufferedReader(new FileReader(filename));  
            String line = null;
            while((line = reader.readLine()) != null){
                StringTokenizer st = new StringTokenizer(line, ",.-!? \t");
                while(st.hasMoreElements()) {
                    String key = st.nextToken();
                    System.out.println(map.get(key));
                }
            }
            reader.close();
        }
        
        public static void translateAllLocal(String inputfilename, String outputfilename) throws Exception {
            getWords(inputfilename);
            BufferedReader reader = new BufferedReader(new FileReader(inputfilename));  
            BufferedWriter writer  = new BufferedWriter(new FileWriter(outputfilename));
            String line = null;
            while((line = reader.readLine()) != null){
                StringTokenizer st = new StringTokenizer(line, ",.-!? \t");
                while(st.hasMoreElements()) {
                    String key = st.nextToken();
                    writer.write(map.get(key) + "\r\n");
                    //System.out.println(map.get(key));
                }
            }
            writer.close();
            reader.close();
        }
        
        
        public static void main(String[] args) throws Exception {
            translateAll("D:\\test.txt");
            translateAllLocal("D:\\test.txt", "D:\\output.txt");
        }
    }
    輸入文件中的內(nèi)容為:
    an apple a day,keep healthy a way.
    輸出結(jié)果顯示為:
    an: 一(在元音字母前代替不定代詞a);一任一某一;一個
    apple: 蘋果;蘋果樹;蘋果公司
    a: 一(個);每一(個);任一(個)
    day: 一天;白天;時期;節(jié)日
    keep: 保持;保留;遵守;阻止
    healthy: 健康的;健全的;大量的;有益于健康的
    a: 一(個);每一(個);任一(個)
    way: 道路;方法;方向;某方面
    posted on 2015-03-04 14:21 marchalex 閱讀(260) 評論(0)  編輯  收藏 所屬分類: java小程序
    主站蜘蛛池模板: 免费99热在线观看| 精品国产麻豆免费网站| 免费精品久久久久久中文字幕| 亚洲AV无码AV吞精久久| 免费人成网上在线观看| 国产男女猛烈无遮挡免费视频网站| 亚洲色偷偷狠狠综合网| 久久精品国产精品亚洲艾草网 | 男女拍拍拍免费视频网站| 国产自国产自愉自愉免费24区 | 亚洲avav天堂av在线不卡 | 国产亚洲精品影视在线产品| 亚洲黄色在线视频| 狼人大香伊蕉国产WWW亚洲 | A级毛片内射免费视频| 四虎在线播放免费永久视频| 91情国产l精品国产亚洲区| 4虎1515hh永久免费| 亚洲福利精品电影在线观看| 亚洲最大黄色网站| h在线看免费视频网站男男| 黄页网站在线观看免费高清| 亚洲免费观看视频| 亚洲成a人无码亚洲成av无码 | 日本片免费观看一区二区| 亚洲国产电影av在线网址| 久久国产一片免费观看| 亚洲国产精品一区二区久久hs| 免费亚洲视频在线观看| 性色av免费观看| 亚洲制服在线观看| 久久青草免费91观看| 亚洲成a人片在线观看日本麻豆 | 亚洲尤码不卡AV麻豆| 一级毛片在线免费观看| 久久久久一级精品亚洲国产成人综合AV区 | 国产亚洲福利精品一区| 看一级毛片免费观看视频| 亚洲综合无码精品一区二区三区 | 亚洲色丰满少妇高潮18p| 精品一区二区三区免费毛片爱 |