Windows phone 7 检查一个词是否真实

Windows phone 7 检查一个词是否真实,windows-phone-7,dictionary,Windows Phone 7,Dictionary,我正在开发一个Windows Phone应用程序,要求用户输入标准英语词典中的有效单词。然而,对于如何检查一个单词是否真实,我有点困惑。是否有人知道一个好的字典API可以与之交互,或者我需要将单词列表作为文本文件添加到我的应用程序中 似乎表明拼写检查API没有向开发人员公开,尽管至少有人声称它提供了一个基于API的解决方案(该解决方案还提供了一个评估,您可以用它来测试它的工作方式) 至于如果你不能使用第三方产品如何实现这一功能,英语的问题在于其他语言:-)我的意思是,它一开始就不一定那么一致,

我正在开发一个Windows Phone应用程序,要求用户输入标准英语词典中的有效单词。然而,对于如何检查一个单词是否真实,我有点困惑。是否有人知道一个好的字典API可以与之交互,或者我需要将单词列表作为文本文件添加到我的应用程序中

似乎表明拼写检查API没有向开发人员公开,尽管至少有人声称它提供了一个基于API的解决方案(该解决方案还提供了一个评估,您可以用它来测试它的工作方式)


至于如果你不能使用第三方产品如何实现这一功能,英语的问题在于其他语言:-)我的意思是,它一开始就不一定那么一致,而且它已经从几十种其他语言中“删除”了单词

因此,没有真正像样的规则可以告诉你一个词是否有效

你需要维护一本词典,考虑到语言中的奇异角落,你可能不得不将其限制在普通单词上(如果空格是个问题,还需要简短的单词)


顺便说一句,如果你真的采用自编词典的方法,你可以使用我多年前学会的一个小技巧

您可以将每个单词编码为:

  • 与最后一个相同的字符数(一个字节);及
  • 新的结局
那么单词表呢

HERE            would encode as    THIS
-------------                      ----
sanctimonious                      0,sanctimonious
sanction                           6,on
sanguine                           3,guine
trivial                            0,trivial
您直接在上面节省了7个字节(19%),我怀疑对于一个20000字的字典来说,节省的字节会相似,只是因为相邻单词(即,公共前缀)之间的最小距离


为了加快查找速度,您还可以在内存中维护一个26个条目的表格,其中包含以
a
b
c
,…,
z
开头的单词的起始偏移量。这些偏移量处的单词将自动将0作为第一个字节,因为它们与前一个单词没有共同的字母。

Mac OS/iOS有一个内置的拼写检查器,带有公共API。也许Windows Phone也有一个?