微软没有在文档中给出完整的代码。但我的代码尝试下面的文字没有被替换。有什么问题,如何使它保存被替换的内容到文件命名为 Word2.docx
?
using Microsoft.Office.Interop.Word;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
SearchReplace();
}
private static object missing; // <- Is this correct ?
private static void SearchReplace()
{
Application application = new Application();
application.Documents.Add("C:\\Users\\test\\Desktop\\word.docx");
Microsoft.Office.Interop.Word.Find findObject = application.Selection.Find;
findObject.ClearFormatting();
findObject.Text = "find me";
findObject.Replacement.ClearFormatting();
findObject.Replacement.Text = "Found";
object replaceAll = Microsoft.Office.Interop.Word.WdReplace.wdReplaceAll;
findObject.Execute(ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref replaceAll, ref missing, ref missing, ref missing, ref missing);
application.Documents.Save();
}
}
}
我想你有一个问题,缺少定义,我已经添加了方法来保存。
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
SearchReplace();
}
private static void SearchReplace()
{
object missing = System.Reflection.Missing.Value;
Application application = new Application();
Microsoft.Office.Interop.Word.Document document = application.Documents.Add("C:\\Users\\test\\Desktop\\word.docx");
Microsoft.Office.Interop.Word.Find findObject = application.Selection.Find;
findObject.ClearFormatting();
findObject.Text = "find me";
findObject.Replacement.ClearFormatting();
findObject.Replacement.Text = "Found";
object replaceAll = Microsoft.Office.Interop.Word.WdReplace.wdReplaceAll;
findObject.Execute(ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref replaceAll, ref missing, ref missing, ref missing, ref missing);
object filename = "C:\\savefile.docx";
document.SaveAs2(ref filename);;
document.Close(ref missing, ref missing, ref missing);
document = null;
application.Quit(ref missing, ref missing, ref missing);
application = null;
}
}
}