⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 translate.java

📁 一个Java语言翻译程序
💻 JAVA
字号:
package test_5;
import java.io.*;
public class Translate
{   
   public static void main(String args[]) throws IOException
   {	   
	   String curPath = Translate.class.getResource("").toString();
	   curPath = curPath.substring(6);//获取当前目录
	   String WordDB = "myTranslate.db";//词库名
	   String FileName = curPath+WordDB; //词库路径
	   if(!new File(FileName).exists()){//存在性判断
	          System.err.println("[Error] File: "+FileName+" Does not exist!");
	          return;
	   }
	   System.out.println("Parsing Word DB: \""+FileName+"\"");
	   FileReader fr=new FileReader(FileName);
	   BufferedReader br=new BufferedReader(fr); 
	   System.out.print("Initializing Word DB:    ");
	   String[] a=new String[100];      
	   String string=br.readLine();
	   int j=1,count=0; //词库量
	   while(string!=null)
	   {//逐行读取词汇库,空格前记录至奇数数组(英文组),空格后记录至偶数数组(中文组)
		   int i=string.indexOf(" ");
		   if(i<0){
			   System.err.print("【FAILED】");
			   System.err.print("\n初始化词库出错,可能是格式出了问题,请仔细检查!");
			   return;
		   }
		   a[j++]=string.substring(0,i); count++; //词库中前半部(英文)
		   a[j++]=string.substring(i+1); count++; //词库中后半部(中文)
		   string=br.readLine();
	   }
	   System.out.print("【  OK  】\n");
	   for(int i=1;i<=count;i++)
		   a[i].trim();//删除字符串中所有的空格
	   for(int i=1;i<j;i++)
		   System.out.println("a["+i+"] "+a[i]);
	   BufferedReader stdin=new BufferedReader(
      	                 new  InputStreamReader(System.in));
	   System.out.println("Enter the sentence to translate:");
	   String to_translate=stdin.readLine();
	   String[] arr=to_translate.split("[^a-zA-Z]+");//该语句实现单词的提取
	   for(int i=0;i<arr.length;i++)
		   arr[i].trim();//删除字符串中所有的空格            
       for(int i=0;i<arr.length;i++)
           for(int k=2;k<=count;k+=2)
        	   if(arr[i].equals(a[k-1]))
        		   System.out.print(a[k]+" ");
       System.out.println(); 
       System.out.println("Enter the Chinese words to translate:");
       to_translate=stdin.readLine();
       for(int i=1;i<=count;i+=1)
    	   if(to_translate.equals(a[i+1])){
    		   System.out.println("“"+to_translate+"”的英文是:"+a[i]);break;
    	   }           
   }		
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -