public class SpellDictionaryDichoDisk extends SpellDictionaryASpell
SpellDictionary
that doesn't cache any words in memory. Avoids the huge
footprint of SpellDictionaryHashMap
at the cost of relatively minor latency. A future version
of this class that implements some caching strategies might be a good idea in the future, if there's any
demand for it.
This implementation requires a special dictionary file, with "code*word" lines sorted by code.
It's using a dichotomy algorithm to search for words in the dictionarytf
Constructor and Description |
---|
SpellDictionaryDichoDisk(java.io.File wordList)
Dictionary convenience Constructor.
|
SpellDictionaryDichoDisk(java.io.File wordList,
java.io.File phonetic)
Dictionary constructor that uses an aspell phonetic file to
build the transformation table.
|
SpellDictionaryDichoDisk(java.io.File wordList,
java.io.File phonetic,
java.lang.String encoding)
Dictionary constructor that uses an aspell phonetic file to
build the transformation table.
|
SpellDictionaryDichoDisk(java.io.File wordList,
java.lang.String encoding)
Dictionary convenience Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
addWord(java.lang.String word)
Add a word permanently to the dictionary (and the dictionary file).
|
java.util.List |
getWords(java.lang.String code)
Returns a list of strings (words) for the code.
|
getCode, getSuggestions, getSuggestions, isCorrect
public SpellDictionaryDichoDisk(java.io.File wordList) throws java.io.FileNotFoundException, java.io.IOException
wordList
- The file containing the words list for the dictionaryjava.io.FileNotFoundException
- indicates problems locating the
words list file on the systemjava.io.IOException
- indicates problems reading the words list
filepublic SpellDictionaryDichoDisk(java.io.File wordList, java.lang.String encoding) throws java.io.FileNotFoundException, java.io.IOException
wordList
- The file containing the words list for the dictionaryencoding
- Uses the character set encoding specifiedjava.io.FileNotFoundException
- indicates problems locating the
words list file on the systemjava.io.IOException
- indicates problems reading the words list
filepublic SpellDictionaryDichoDisk(java.io.File wordList, java.io.File phonetic) throws java.io.FileNotFoundException, java.io.IOException
wordList
- The file containing the words list for the dictionaryphonetic
- The file to use for phonetic transformation of the
wordlist.java.io.FileNotFoundException
- indicates problems locating the
file on the systemjava.io.IOException
- indicates problems reading the words list
filepublic SpellDictionaryDichoDisk(java.io.File wordList, java.io.File phonetic, java.lang.String encoding) throws java.io.FileNotFoundException, java.io.IOException
wordList
- The file containing the words list for the dictionaryphonetic
- The file to use for phonetic transformation of the
wordlist.encoding
- Uses the character set encoding specifiedjava.io.FileNotFoundException
- indicates problems locating the
file on the systemjava.io.IOException
- indicates problems reading the words list
filepublic void addWord(java.lang.String word)
word
- The word to add.public java.util.List getWords(java.lang.String code)
getWords
in class SpellDictionaryASpell
code
- The phonetic code common to the list of words