Замена нескольких слов в ворде - C#

Узнай цену своей работы

Формулировка задачи:

Имеется вот такой код, но делает замену только одного выражения, а их несколько, есть мысль засунуть это все в метод и перегонять уже в методе только входные данные, но опять же постоянное закрытие и открытие докмента, мне кажется не есть хорошо, может будут какие то предложение на это счет?
Листинг программы
  1. Word.Application app = new Word.Application();
  2. Object fileName = @"D:\Внимание.docx";
  3. Object missing = Type.Missing;
  4. app.Documents.Open(ref fileName);
  5. Word.Find find = app.Selection.Find;
  6. find.Text = "?это";
  7. find.Replacement.Text = "меняем";
  8. Object wrap = Word.WdFindWrap.wdFindContinue;
  9. Object replace = Word.WdReplace.wdReplaceAll;
  10. find.Execute(FindText: Type.Missing,
  11. MatchCase: false,
  12. MatchWholeWord: false,
  13. MatchWildcards: false,
  14. MatchSoundsLike: missing,
  15. MatchAllWordForms: false,
  16. Forward: true,
  17. Wrap: wrap,
  18. Format: false,
  19. ReplaceWith: missing, Replace: replace);
  20. app.ActiveDocument.Save();
  21. app.ActiveDocument.Close();
  22. app.Quit();

Решение задачи: «Замена нескольких слов в ворде»

textual
Листинг программы
  1. Word.Application app = new Word.Application();
  2.             Object fileName = @"D:\Внимание.docx";
  3.             Object missing = Type.Missing;
  4.             app.Documents.Open(ref fileName);
  5.             Word.Find find = app.Selection.Find;
  6.            
  7.            
  8.             string[] array = new string[2];
  9.             string[] array1 = new string[2];
  10.             array[0] = "?замена1";
  11.             array1[0] = "заменен1";
  12.             array[1] = "?замена2";
  13.             array1[1] = "заменен2";
  14.      
  15.             for (int i = 0; i < array.Length; i++)
  16.             {
  17.                 find.Text = array[i];
  18.                 find.Replacement.Text =array1[i];
  19.                 Object wrap = Word.WdFindWrap.wdFindContinue;
  20.                 Object replace = Word.WdReplace.wdReplaceAll;
  21.                 find.Execute(FindText: Type.Missing,
  22.                MatchCase: false,
  23.                MatchWholeWord: false,
  24.                MatchWildcards: false,
  25.                MatchSoundsLike: missing,
  26.                MatchAllWordForms: false,
  27.                Forward: true,
  28.                Wrap: wrap,
  29.                Format: false,
  30.                ReplaceWith: missing, Replace: replace);
  31.                
  32.            
  33.             }
  34.             app.ActiveDocument.Save();
  35.             app.ActiveDocument.Close();
  36.             app.Quit();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы