使用OpenXML替换文档中的文本

时间:2016-12-23 10:44:02

标签: c# ms-word openxml

我打开文档并复制到流中。

如何在流之前替换文档中的某些文本?

//wordTemplate  - var with path to my word template
byte[] result = null;
byte[] templateBytes = System.IO.File.ReadAllBytes(wordTemplate);
using (MemoryStream templateStream = new MemoryStream())
{
    templateStream.Write(templateBytes, 0, (int)templateBytes.Length);
    using (WordprocessingDocument doc = WordprocessingDocument.Open(templateStream, true))
    {
        MainDocumentPart mainPart = doc.MainDocumentPart;

        mainPart.Document.Save();
        templateStream.Position = 0;
        using (MemoryStream memoryStream = new MemoryStream())
        {
            templateStream.CopyTo(memoryStream);
            result = memoryStream.ToArray();
        }
    }
}

1 个答案:

答案 0 :(得分:0)

为什么不调用File.ReadAllLines(string)而不是调用File.ReadAllBytes()?它为您提供了一系列字符串,您可以搜索并替换您心中的喜悦。