无论如何都要加载像这样的语法
_recognizer.LoadGrammar(new Grammar(new GrammarBuilder(new Choices(File.ReadAllLines(@"Default Animals")))));
或者像这样
string contents = (File.ReadAllText(@"Default Animals.txt"));
成一个字符串,这样我可以用IF语句检查该文本中是否有某个单词?
实施例*
if(speech.Contains(contents))
{
kevin.speak("It worked");
} else {
kevin.speak("It didnt work");
}
break;
问题是,它只会读取“默认动物文本,如果其中只有一个单词... 喜欢 狗 但如果.txt看起来像这样
dog
cat
fish
它不会读它。我希望它检查.txt是否包含该单词,如果它包含,那么我会给出正确的响应。
答案 0 :(得分:2)
我想你想测试语音字符串是否包含文本文件中定义的任何动物。
string speech = "i want a tiger";
var allAnimals = File.ReadAllLines(@"Default Animals.txt");
if (allAnimals.Any(x => speech.IndexOf(x, StringComparison.CurrentCultureIgnoreCase) != -1))
{
kevin.speak("It worked");
}
else
{
kevin.speak("It didnt work");
}
答案 1 :(得分:1)
我认为您正在寻找的方法是
File.ReadAllLines(pathToFile)
将所有文件内容读入变量。