c# - 如何通过Word文档修改 "walk"的内容?

标签 c# .net ms-word

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

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

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

最佳答案

关于:

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

关于c# - 如何通过Word文档修改 "walk"的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14430440/

相关文章:

c# - 电子表格齿轮和日期时间格式

c# - 如何在 C# 控制台应用程序中从 Static void main 调用其他类的方法?

c# - 了解 C# WPF 中的文本范围

c# - 使用 GL.LINES 和 Unity3d 绘制一条线

c# - 帮助 SAPI v5.1 SpeechRecognitionEngine 总是给出与 C# 相同的错误结果

javascript - 将 js 变量或 inout 值传递给 razor

c# - 对于任务,有 continueWith 和 WhenAll(),什么时候继续,什么时候完成任务,什么时候完成 ConitueWith?

python - 不使用 COM/自动化从 Word 文档中提取文本的最佳方法?

vba - Word 2010 VBA 在突出显示的范围内替换

c# - 将 .docx 转换为 html