示例#1
0
        internal void ParseNgrams(Dictionary dictionary)
        {
            DictionaryFileType[] files = new DictionaryFileType[]
            {
                DictionaryFileType.UnigramFrequences,
                DictionaryFileType.DigramFrequences,
                DictionaryFileType.TrigramFrequences
            };

            foreach (DictionaryFileType type in files)
            {
                string file = dictionary.GetFile(type);

                if (null != file)
                {
                    NgramCollection collection = this.ngramParser.ParseNgrams(file);
                    NgramType ngramType;
                    switch (type)
                    {
                        case DictionaryFileType.DigramFrequences:
                            ngramType = NgramType.Digram;
                            break;

                        case DictionaryFileType.TrigramFrequences:
                            ngramType = NgramType.Trigram;
                            break;

                        default:
                            ngramType = NgramType.Unigram;
                            break;
                    }

                    dictionary.AddNgramCollection(ngramType, collection);
                }
            }
        }