Замена нескольких слов в ворде - C#
Формулировка задачи:
Имеется вот такой код, но делает замену только одного выражения, а их несколько, есть мысль засунуть это все в метод и перегонять уже в методе только входные данные, но опять же постоянное закрытие и открытие докмента, мне кажется не есть хорошо, может будут какие то предложение на это счет?
Word.Application app = new Word.Application(); Object fileName = @"D:\Внимание.docx"; Object missing = Type.Missing; app.Documents.Open(ref fileName); Word.Find find = app.Selection.Find; find.Text = "?это"; find.Replacement.Text = "меняем"; Object wrap = Word.WdFindWrap.wdFindContinue; Object replace = Word.WdReplace.wdReplaceAll; find.Execute(FindText: Type.Missing, MatchCase: false, MatchWholeWord: false, MatchWildcards: false, MatchSoundsLike: missing, MatchAllWordForms: false, Forward: true, Wrap: wrap, Format: false, ReplaceWith: missing, Replace: replace); app.ActiveDocument.Save(); app.ActiveDocument.Close(); app.Quit();
Решение задачи: «Замена нескольких слов в ворде»
textual
Листинг программы
Word.Application app = new Word.Application(); Object fileName = @"D:\Внимание.docx"; Object missing = Type.Missing; app.Documents.Open(ref fileName); Word.Find find = app.Selection.Find; string[] array = new string[2]; string[] array1 = new string[2]; array[0] = "?замена1"; array1[0] = "заменен1"; array[1] = "?замена2"; array1[1] = "заменен2"; for (int i = 0; i < array.Length; i++) { find.Text = array[i]; find.Replacement.Text =array1[i]; Object wrap = Word.WdFindWrap.wdFindContinue; Object replace = Word.WdReplace.wdReplaceAll; find.Execute(FindText: Type.Missing, MatchCase: false, MatchWholeWord: false, MatchWildcards: false, MatchSoundsLike: missing, MatchAllWordForms: false, Forward: true, Wrap: wrap, Format: false, ReplaceWith: missing, Replace: replace); } app.ActiveDocument.Save(); app.ActiveDocument.Close(); app.Quit();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д