📄 dictionaryprocessor.java
字号:
package myprojects_SpellChecker;
import java.util.TreeSet;
import java.util.*;
import java.io.*;
class DictionaryProcessor {
private String word;//存放每行的单词
private String dictionaryName;//字典名
TreeSet treeset;
private File MyDictionary;
public DictionaryProcessor(File MyDictionary){
this.MyDictionary=MyDictionary;
treeset=new TreeSet();
treeset.clear();//清空treeset
readDictionary();
}
public void readDictionary(){//读入字典方法
BufferedReader dic=null;
try {
dic=new BufferedReader(new FileReader(MyDictionary));
}
catch(FileNotFoundException ex) {
System.out.println("Directory File not found!");
}
try {
this.dictionaryName=dic.readLine();
while((this.word=dic.readLine())!=null) {
this.treeset.add(word/*.toLowerCase()*/);
}
dic.close();
}
catch(IOException ex) {
System.out.println("文件读取失败!");
}
}
public void addWordToDictionary(String word){//加入新单词到字典方法
this.treeset.add(word);
}
public void NewDictionary(){//备份原字典以及更新原字典方法
String newdic=MyDictionary.getName();//记录原字典文件的名称
if(MyDictionary.exists()) {//把原字典保存为备份文件
MyDictionary.renameTo(new File(MyDictionary.getName().substring(0,MyDictionary.getName().length()-4)+".bak"));
}
else System.out.println("The word is not exit!");
try {
FileWriter to=new FileWriter(newdic);//以原字典文件名创建字符流对象
Iterator te=treeset.iterator();
to.write(dictionaryName);//写字典名字
while(te.hasNext())//把修改后的字典保存
{
String rr=new String(te.next().toString());
rr=rr+"\r\n";
to.write(rr);
}
to.close();
}
catch(Exception e){}
}
public void ExtraDictionary(File file){//导出词典
try {
FileWriter to=new FileWriter(file);//以另存的字典文件名创建字符流对象
Iterator te=treeset.iterator();
to.write(dictionaryName);//写字典名字
while(te.hasNext())//把修改后的字典保存
{
String rr=new String(te.next().toString());
rr=rr+"\r\n";
to.write(rr);
}
to.close();
}
catch(Exception e){}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -