public class GenericSpellDictionary extends SpellDictionaryASpell
This class is thread safe. Derived classes should ensure that this preserved.
There are many open source dictionary files. For just a few see: http://wordlist.sourceforge.net/
This dictionary class reads words one per line. Make sure that your word list is formatted in this way (most are).
| Modifier and Type | Field and Description |
|---|---|
protected java.util.HashMap |
mainDictionary
The hashmap that contains the word dictionary.
|
tf| Constructor and Description |
|---|
GenericSpellDictionary(java.io.File wordList)
Dictionary constructor that uses the DoubleMeta class with the
English alphabet.
|
GenericSpellDictionary(java.io.File wordList,
java.io.File phonetic)
Dictionary constructor that uses an aspell phonetic file to
build the transformation table.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addWord(java.lang.String word)
Add a word permanently to the dictionary (and the dictionary file).
|
protected void |
createDictionary(java.io.BufferedReader in)
Constructs the dictionary from a word list file.
|
java.util.List |
getWords(java.lang.String code)
Returns a list of strings (words) for the code.
|
boolean |
isCorrect(java.lang.String word)
Returns true if the word is correctly spelled against the current word list.
|
protected void |
putWord(java.lang.String word)
Allocates a word in the dictionary
|
getCode, getSuggestions, getSuggestionsprotected java.util.HashMap mainDictionary
public GenericSpellDictionary(java.io.File wordList)
throws java.io.FileNotFoundException,
java.io.IOException
wordList - The file containing dictionary as a words list.java.io.FileNotFoundException - when the words list file could not
be located on the system.java.io.IOException - when problems occurs while reading the words
list filepublic GenericSpellDictionary(java.io.File wordList,
java.io.File phonetic)
throws java.io.FileNotFoundException,
java.io.IOException
wordList - The file containing dictionary as a words list.phonetic - The file containing the phonetic transformation
information.java.io.FileNotFoundException - when the words list or phonetic
file could not be located on the systemjava.io.IOException - when problems occurs while reading the
words list or phonetic filepublic void addWord(java.lang.String word)
This needs to be made thread safe (synchronized)
word - The word to add to the dictionaryprotected void createDictionary(java.io.BufferedReader in)
throws java.io.IOException
Each word in the reader should be on a separate line.
This is a very slow function. On my machine it takes quite a while to load the data in. I suspect that we could speed this up quite allot.
java.io.IOExceptionprotected void putWord(java.lang.String word)
public java.util.List getWords(java.lang.String code)
getWords in class SpellDictionaryASpellcode - The phonetic code we want to find words forpublic boolean isCorrect(java.lang.String word)
isCorrect in interface SpellDictionaryisCorrect in class SpellDictionaryASpellword - The word to checked in the dictionary