2017-03-06 119 views
0

我想做一個應用程序,檢查一個單詞是否是一個有效的詞典單詞。哪裏是在Visual Studio中存儲的字典文件

NetSpell.SpellChecker.Dictionary.WordDictionary oDict = new NetSpell.SpellChecker.Dictionary.WordDictionary(); 

oDict.DictionaryFile = "en-US.dic"; 
oDict.Initialize(); // file not found exception 
string wordToCheck = "door"; 
NetSpell.SpellChecker.Spelling oSpell = new NetSpell.SpellChecker.Spelling(); 

oSpell.Dictionary = oDict; 
if(oSpell.TestWord(wordToCheck)) 
{ 
    //Word exist in dictionary 
    ... 
} 

我試圖讓像所有可能的文件位置 「\ EN-US.dic。」 「C:\ Program Files文件\ IIS快遞\ EN-US.dic」 但是我還是文件未發現異常。任何人都可以幫助我確定文件的實際位置。

+0

你的意思是拼寫檢查英語詞典? –

+0

@BugFinder嗨,我不認爲這是你提到的職位的重複。 –

回答

1

您需要使用使用Server.MapPath相對路徑:如果文件en-US.dic在你根目錄,使用

oDict.DictionaryFile = Server.MapPath("en-US.dic"); 

如果文件en-US.dic是一些其他目錄下嵌套,使用方法:

oDict.DictionaryFile = Server.MapPath("/SomeDirectory/en-US.dic"); 
+1

嗨@Chris,請參閱他提到的「C:\ Program Files \ IIS Express ...」這就是我發現他正在運行Web服務器的方式。 –

+1

啊是的。發現得好。 :) – Chris

+0

@Chris - 謝謝哥們:) –

2

當您使用nuget安裝netSpell時,將通過名稱'Packages'創建一個新文件夾。所有的.dic(字典)文件都存儲在該文件夾中。