首先引入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实现批量替换的全部代码,希望对大家的学习有所帮助。