Java 实现文本翻译软件:模块化设计与代码示例
以下是一个简单的 Java 程序,实现了文本翻译软件的三个模块:
- 文件读取模块
import java.io.*;
public class FileLoader {
public static byte[] load(String filePath) throws IOException {
File file = new File(filePath);
byte[] data = new byte[(int) file.length()];
InputStream in = new FileInputStream(file);
in.read(data);
in.close();
return data;
}
}
- 翻译模块
import java.util.HashMap;
public class Translator {
private HashMap<String, String> dictionary;
public Translator(HashMap<String, String> dictionary) {
this.dictionary = dictionary;
}
public String translate(byte[] data) {
String text = new String(data);
for (String key : dictionary.keySet()) {
text = text.replaceAll(key, dictionary.get(key));
}
return text;
}
}
- 文件保存模块
import java.io.*;
public class FileSaver {
public static void save(String filePath, String data) throws IOException {
File file = new File(filePath);
OutputStream out = new FileOutputStream(file);
out.write(data.getBytes());
out.close();
}
}
使用示例:
import java.io.IOException;
import java.util.HashMap;
public class Main {
public static void main(String[] args) {
String filePath = 'input.txt';
String outputPath = 'output.txt';
HashMap<String, String> dictionary = new HashMap<>();
dictionary.put('hello', '你好');
dictionary.put('world', '世界');
try {
byte[] data = FileLoader.load(filePath);
Translator translator = new Translator(dictionary);
String translatedText = translator.translate(data);
FileSaver.save(outputPath, translatedText);
System.out.println('翻译完成!');
} catch (IOException e) {
e.printStackTrace();
}
}
}
这个程序会读取名为“input.txt”的文件,将其中的“hello”和“world”分别翻译为中文“你好”和“世界”,并将翻译结果保存到名为“output.txt”的文件中。
原文地址: http://www.cveoy.top/t/topic/oUAX 著作权归作者所有。请勿转载和采集!