asp.net操作Word实现批量替换

2025-05-29 0 74

首先引入Microsoft.Office.Interop.Word组件,该组件在安装完office后在COM中出现。

代码如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71
using System;

using System.Collections.Generic;

using System.Diagnostics;

using System.Linq;

using System.Text;

namespace TextReplace

{

public class WordOperate : IDisposable

{

private Microsoft.Office.Interop.Word._Application _app;

private Microsoft.Office.Interop.Word._Document _doc;

object _nullobj = System.Reflection.Missing.Value;

/// <summary>

/// 关闭Word进程

/// </summary>

public void KillWinword()

{

var p = Process.GetProcessesByName("WINWORD");

if (p.Any()) p[0].Kill();

}

/// <summary>

/// 打开word文档

/// </summary>

/// <param name="filePath"></param>

public void Open(string filePath)

{

_app = new Microsoft.Office.Interop.Word.ApplicationClass();

object file = filePath;

_doc = _app.Documents.Open(

ref file, ref _nullobj, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj, ref _nullobj);

}

/// <summary>

/// 替换word中的文字

/// </summary>

/// <param name="strOld">查找的文字</param>

/// <param name="strNew">替换的文字</param>

public void Replace(string strOld, string strNew)

{

_app.Selection.Find.ClearFormatting();

_app.Selection.Find.Replacement.ClearFormatting();

_app.Selection.Find.Text = strOld;

_app.Selection.Find.Replacement.Text = strNew;

object objReplace = Microsoft.Office.Interop.Word.WdReplace.wdReplaceAll;

_app.Selection.Find.Execute(ref _nullobj, ref _nullobj, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj,

ref _nullobj, ref objReplace, ref _nullobj,

ref _nullobj, ref _nullobj, ref _nullobj);

}

/// <summary>

/// 保存

/// </summary>

public void Save()

{

_doc.Save();

}

/// <summary>

/// 退出

/// </summary>

public void Dispose()

{

_doc.Close(ref _nullobj, ref _nullobj, ref _nullobj);

_app.Quit(ref _nullobj, ref _nullobj, ref _nullobj);

}

}

}

以上就是关于asp.net如何操作Word实现批量替换的全部代码,希望对大家的学习有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 asp.net操作Word实现批量替换 https://www.kuaiidc.com/100863.html

相关文章

发表评论
暂无评论