如何“走”通过Word文档更改内容?

时间:2013-01-20 23:13:40

标签: c# .net ms-word

我想用另一个字符替换文件中的每个字符。

现在我正在使用Find.Execute()方法实现它,但在这种情况下,它花费时间进行搜索然后替换它,然后再次从文件开头搜索另一个字符,所以如果我想要替换它将遍历整个文档的所有字母26 x2(小写和大写)= 48次,但我希望它替换为1次查找,所以就像:它得到第一个字符“a”替换为“ a'“,如果下一个字符是”c“替换为”s“等,则通过一次查找来进行查找,因此它只会遍历整个文档一次。

我知道我可以通过编写自己的代码来实现它,但我想知道可能有一些可以缓解我生活的内置类:)

2 个答案:

答案 0 :(得分:1)

怎么样:

using Word = Microsoft.Office.Interop.Word;

//...

Word.Application app = new Word.Application();
Word.Document myDoc = app.Documents.Add(pathToMyDoc);

for(int n = 0; n < myDoc.Characters.Count; ++n)
{
  myDoc.Characters[n].Text = LookupReplacement(myDoc.Characters[n].Text);
}

完全未经测试但可能对您有所帮助。链接我看了看: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word.documentclass(v=office.11).aspx

答案 1 :(得分:0)