我一直在尝试从单词doc中删除特定行。逻辑是,如果我在文档中找到一个特定的单词,我需要删除包含该单词的特定行。到目前为止我只写了找到这个词的逻辑。但是,跟踪行号广告删除该行,我无法做到。我搜索了很多网站,但是,我现在非常困惑。你能帮我解决一下吗?
下面是我的代码: -
void searchText(string txt)
{
Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document doc = app.Documents.Open("C:\\Users\\SS5014874\\Desktop\\testdoc1.docx");
object missing = System.Reflection.Missing.Value;
doc.Content.Find.ClearFormatting();
object keyword = txt.ToString();
if (doc.Content.Find.Execute(ref keyword, ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing))
{
//Need the logic to delete the line here
}
else
{
MessageBox.Show("Not found");
}
doc.Close(ref missing, ref missing, ref missing);
app.Quit(ref missing, ref missing, ref missing);
}
如果您需要任何其他信息,请与我们联系。
注意:搜索关键字由文本框提供,上述功能从按钮调用。
答案 0 :(得分:2)
像
这样的东西var range = doc.Content;
if (range.Find.Execute(txt))
{
range.Expand(WdUnits.wdLine); // or change to .wdSentence or .wdParagraph
range.Delete();
}
答案 1 :(得分:1)
您可以迭代文档的段落,然后在特定段落中找到该词后,您可以删除该段落。
<form>