Как установить приложение Hunspell для C#?

#c# #.net #visual-studio #hunspell #nhunspell

Вопрос:

Я хочу реализовать проверку орфографии и словарь в своем приложении для Windows на C#. Из Google я узнал, что hunspell-один из лучших вариантов реализации этой функции. Я установил nhunspell с помощью visual studio NuGet в соответствии с предложением, приведенным ниже по URL-адресу. Но когда я пытаюсь выполнить код, появляется ошибка «Файл AFF не найден: C:TestProjectTestHunshellbinDebugen_us.aff»

Когда я ищу установленный пакет hunspell, файлы .aff и .dic не найдены. Я не уверен, откуда я могу загрузить и установить или вставить файлы «en_us.aff», «en_us.dic» в свое решение.

Может ли кто-нибудь, пожалуйста, подсказать правильный способ установки и реализации hunspell в приложении Windows на C#?

URL-адрес ссылки на проект кода

Ошибка

Комментарии:

1. Пакет nuget был обновлен в последний раз в 2015 году, домашней страницы, а также исходного кода, похоже, там нет. Я бы счел это устаревшим и больше не поддерживаемым

2. @Sascha, если возможно, не могли бы вы предложить какой-нибудь альтернативный URL-адрес для реализации той же функциональности в C#.

3. Если вы посмотрите на страницу проекта hunspell , там есть ссылки на некоторые словари.

4. @phuzi Я попробовал cgit. freedesktop.org/libreoffice/dictionaries/tree/en/en_US.dic но я не могу загрузить файлы .aff и .dic.

5. По этой ссылке есть ссылка на обычный файл, попробуйте загрузить его!

Ответ №1:

Основываясь на моем тесте, вы можете скачать aff amp; .dic files его по следующей ссылке:

en_US.афф

en_US.dic

После нажатия на кнопку мы должны щелкнуть правой кнопкой мыши, чтобы сохранить файл в формате txt.

Затем нам нужно переместить файл .txt, чтобы изменить его на расширение .aff или .dic.

Наконец, мы перемещаем два файла в projectbindebug папку.

Вот мой тестовый код и результат:

     Hunspell hunspell = new Hunspell("en_US.aff", "en_US.dic");
    Console.WriteLine("Hunspell - Spell Checking Functions");
    Console.WriteLine("¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯");

    Console.WriteLine("Check if the word 'Recommendation' is spelled correct");
    bool correct = hunspell.Spell("Recommendation");
    Console.WriteLine("Recommendation is spelled "  
       (correct ? "correct" : "not correct"));

    Console.WriteLine("");
    Console.WriteLine("Make suggestions for the word 'Recommendatio'");
    List<string> suggestions = hunspell.Suggest("Recommendatio");
    Console.WriteLine("There are "  
       suggestions.Count.ToString()   " suggestions");
    foreach (string suggestion in suggestions)
    {
        Console.WriteLine("Suggestion is: "   suggestion);
    }
 

Результат:

введите описание изображения здесь

Комментарии:

1. Спасибо, но, к сожалению, у меня это не работает. Я скачал файлы и переименовал их с правильными расширениями. но в предложениях значение всегда пустое.

2. @Ask_SO, Вы можете скачать эти два файла отсюда .

3. J Jun — Не могли бы вы, пожалуйста, кратко объяснить мне назначение файла AFF. Даже если какая-либо ссылка тоже в порядке.