[英]Word inerop c#: Finding and replacing asterisk in word file
我正在使用 word interop 編輯 word 文件。 有時這些文件有多個“*”,我必須以編程方式替換它們。 因此,如果有兩個星號,我將用 no 替換它們。 2.不知怎的,我找不到“*”。
Word.Range rngAff = doc.Content;
rngAff.Find.ClearFormatting();
rngAff.Find.Font.Superscript = 1;
rngAff.Find.Text = @"\*{1,}";
while (rngAff.Find.Execute())
{
rngAff.Find.Replacement.Text = this.CountReplaceAsterisks()
}
不知何故執行命令不成功。 如何在word文件中找到星號?
當我需要替換 word 文件中的某些字符時,我正在使用那段代碼,我得到了很好的結果:
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 = "**";
findObject.Replacement.ClearFormatting();
findObject.Replacement.Text = "";
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;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.