【问题标题】:Check if some word exists using Word dictionary使用 Word 词典检查是否存在某个单词
【发布时间】:2014-04-06 19:28:13
【问题描述】:

我正在使用 C# 和 VSTO 开发 Word 2010 插件。 我想知道我是否可以检查 Word 词典中是否存在某个单词?

我找到了这个var dict = Application.CustomDictionaries.ActiveCustomDictionary; 但我不知道如何使用它来检查是否存在某个单词。 有什么想法吗?

【问题讨论】:

    标签: c# dictionary ms-word vsto spell-checking


    【解决方案1】:

    您可以手动阅读字典文件,并检查该单词是否存在于列表中。

    试试这个:

    string[] words = File.ReadAllLines(Path.Combine(Globals.ThisAddIn.Application.CustomDictionaries[1].Path, Globals.ThisAddIn.Application.CustomDictionaries[1].Name));
    
    bool wordExists = words.Contains("yourWord");
    

    注意:

    您的示例读取自定义词典,而不是 Word 内部词典。据我所知,无法阅读默认字典。

    【讨论】:

    • 嘿,谢谢你的回答,我试过了,当我试图读取文件时,我得到了“unauthorizedaccessexception”。我该如何克服呢?
    • @user3323203:字典的路径是什么。你可以访问它吗?
    • 路径是“AppData\Roaming\Microsoft\UProof”,我可以访问它。
    • @user3323203:抱歉,错过了那个。 Path 只包含目录,Name 是实际文件名。
    • 对不起,我认为它有效,但我犯了一个错误,我想要获取单词的字典而不是自定义字典。 (想取一些词并检查它是否存在于语言中)
    猜你喜欢
    • 2017-12-11
    • 2013-05-24
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    • 2016-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多