자바 영어 번역 프로그램 구현
1.기능 소개
텍스트 파일 의 영 어 를 대응 하 는 중국어 로 변환 합 니 다.
라 이브 러 리 는 다음 과 같 습 니 다.
원본 파일:
번역 한 파일:
원본 파일 경 로 를 입력 하고 번 역 된 내용 을 result.txt 파일 에 출력 합 니 다.
2.중요 기술
(1)어고 파일 을 불 러 오 는 방법
라 이브 러 리 파일 은 kry=value 의 형식 으로 Properties 류 의 load 함 수 를 사용 할 수 있 습 니 다.
(2)원본 파일 의 영문 단락 을 어떻게 하나씩 나 누 는 지
StringTokenizer 클래스 사용 가능
(3)어떻게 번역 하 는가
직접 중국어 로 상응하는 영 어 를 교체 하 다
3.프로젝트 구조
(4)코드 작성
① FileLoader 클래스
/* , */
package zhidao3_2;
import java.io.FileInputStream;
import java.io.File;
public class FileLoad {
public static byte[] getContent(String fileName)throws Exception{
File file = new File(fileName);
if(!file.exists()){
System.out.println(" , ");
}
FileInputStream fis = new FileInputStream(file);
int length = (int)file.length();
byte[] data = new byte[length];
fis.read(data);
fis.close();
return data;
}
}
② TxtTrans 클래스
/* , , , , , */
package zhidao3_2;
import java.util.StringTokenizer;
import java.util.Properties;
import java.io.*;
public class TxtTrans {
private Properties pps;
public TxtTrans(){
loadCiku();
}
public void loadCiku(){
pps = new Properties();
try{
FileReader fis = new FileReader("g:/ciku.txt");// ,
pps.load(fis);
fis.close();
}catch(Exception ex){
ex.printStackTrace(System.out);
System.out.println(" ");
}
//System.out.println(pps.get("china")) ;
}
public String trans(byte[] data){
String srcTxt = new String(data);
String dstTxt = srcTxt;
String delim = " ,.!
\t"; //
StringTokenizer st = new StringTokenizer(srcTxt,delim,false);
String sub,lowerSub,newSub;
//int i=0;
while(st.hasMoreTokens()){
sub = st.nextToken(); //
lowerSub = sub.toLowerCase();// ,
//System.out.println(sub);
newSub = pps.getProperty(lowerSub);
if(newSub != null){ // ,
dstTxt = dstTxt.replaceFirst(sub, newSub); // , , ch na
//System.out.println(dstTxt);
}
}
return dstTxt.replaceAll(" ", ""); //
}
}
③ 파일 출력 클래스
/* */
package zhidao3_2;
import java.io.File;
import java.io.FileOutputStream;
public class FileOutput {
public static void output(String text,String fileName)throws Exception{
File file = new File(fileName);
FileOutputStream fos = new FileOutputStream(file);
fos.write(text.getBytes());
fos.close();
}
}
④ 주 함수
package zhidao3_2;
import javax.swing.JOptionPane;
public class Main {
public static void main(String[] args) {
String srcFile = JOptionPane.showInputDialog(" ");
try{
byte[] data = FileLoad.getContent(srcFile);
TxtTrans tt = new TxtTrans();
String dString = tt.trans(data);
FileOutput.output(dString, "g:/result.txt");
}catch(Exception ex){
JOptionPane.showMessageDialog(null, " ");
System.exit(1);
}
JOptionPane.showMessageDialog(null, " ");
}
}
마지막 프로젝트 구 조 는 다음 과 같다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.