在不打开文件的情况下查找并替换.docx文件中的文本

时间:2016-12-16 12:29:42

标签: c# replace ms-word

我有一个模板.docx文件,我必须替换占位符。我使用c# word interop find and replace everything中的代码替换了我的word文件中的名称。这很好用。

object fileName = GetFilePath();
Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application { Visible = true };
Microsoft.Office.Interop.Word.Document aDoc = wordApp.Documents.Open(fileName, ReadOnly: false, Visible: true);

aDoc.Activate();

FindAndReplace(wordApp, "firstname", "Max");

aDoc.Save();

此实现确实打开了word文件。 我的问题是,如果有任何方法可以在不打开文件的情况下替换文本吗?

2 个答案:

答案 0 :(得分:0)

要部分更改您需要先打开它的任何文件,除了完全重写它之外没有别的办法,例如在应用程序的内存中存储其他内容,例如。

答案 1 :(得分:0)

如果您只是想隐藏它为用户开放的事实,只需更改此参数:

Visible: false

文件仍会被打开,但不会显示窗口。

请注意,这仍将以与正常打开时相同的方式影响文件(其他用户可能无法对其进行编辑等)。