学生做word题时,要求学生对指定字符进行查找及替换,下面的代码用来检查学生做的是不是正确 。
【C#检查word指定字符的效果及替换结果】bool 替换正确(word.Document thedoc, string 要被替换的字符){try{word.Selection sel = app.Selection;sel.Find.Wrap = word.WdFindWrap.wdFindContinue;sel.Find.Text = 要被替换的字符;bool ok = sel.Find.Execute(ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss);if (ok) { return false; }return true;}catch { return false; }}public bool 查找替换(word.Document thedoc, string 要被替换的字符, string 要替换成的字符, string 字符效果){try{if (!替换正确(thedoc, 要被替换的字符)) { return false; }word.Selection sel = app.Selection;sel.Find.Wrap = word.WdFindWrap.wdFindContinue;sel.Find.Text = 要替换成的字符;int count = 0;bool find = true;while (find){find = sel.Find.Execute(ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss);if (find){count;switch (字符效果){case "0"://着重号if (sel.Font.EmphasisMark != word.WdEmphasisMark.wdEmphasisMarkOverSolidCircle){return false;}break;case "1"://变成红色if (sel.Font.Color != word.WdColor.wdColorRed){return false;}break;case "2"://变成蓝色if (sel.Font.Color != word.WdColor.wdColorBlue){return false;}break;case "3"://倾斜if (sel.Font.Italic != -1){return false;}break;case "4"://加粗if (sel.Font.Bold != -1){return false;}break;case "5"://加粗倾斜if (sel.Font.Bold != -1 | sel.Font.Italic != -1){return false;}break;case "6"://加粗 变成红色if (sel.Font.Bold != -1 | sel.Font.Color != word.WdColor.wdColorRed){return false;}break;case "7"://着重号 变成蓝色if (sel.Font.EmphasisMark != word.WdEmphasisMark.wdEmphasisMarkOverSolidCircle | sel.Font.Color != word.WdColor.wdColorBlue){return false;}break;default:break;}}}if (count == 0) { return false; }return true;}catch { return false; }}
