<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小程序
    主站蜘蛛池模板: 日本免费一区二区久久人人澡| 亚洲精品国产免费| 久久久亚洲精品视频| 久久成人国产精品免费软件| 亚洲精品456人成在线| 免费国产成人午夜私人影视| 青青操免费在线视频| 日本亚洲精品色婷婷在线影院| 免费在线观看a级毛片| 毛片无码免费无码播放| 蜜芽亚洲av无码一区二区三区| 亚洲午夜久久久影院伊人| 无码专区永久免费AV网站| igao激情在线视频免费| 亚洲免费视频网址| 亚洲一级片免费看| 歪歪漫画在线观看官网免费阅读 | 亚洲av永久无码精品三区在线4 | 日韩中文无码有码免费视频 | 亚洲乱码日产一区三区| 成年女人午夜毛片免费看| 中国人免费观看高清在线观看二区| 亚洲啪啪免费视频| 亚洲中文字幕久久精品无码喷水 | 国产亚洲精品不卡在线| 精品久久久久成人码免费动漫| 精品97国产免费人成视频| 亚洲中文字幕乱码熟女在线| 亚洲av不卡一区二区三区| 免费国产真实迷j在线观看| 国产妇乱子伦视频免费| 成全视成人免费观看在线看| 亚洲国产精品无码观看久久| 久久亚洲精品无码AV红樱桃| 久久精品亚洲乱码伦伦中文| 日韩中文无码有码免费视频| 永久看日本大片免费35分钟| 水蜜桃视频在线观看免费播放高清| 美国毛片亚洲社区在线观看 | 日日狠狠久久偷偷色综合免费| 亚洲婷婷综合色高清在线|