Открываю документ и копирую его в поток.Использование 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();
}
}
}
это полезно? http://stackoverflow.com/questions/18744660/find-and-replace-text-in-xml-file-using-c-sharp – NMathur
цель - документ открытого слова, изменить некоторые строки и отправить для загрузки пользователям – Fullbalanced
Вы можете просто использовать 'Regex' для замены текста. Подайте его 'StreamReader.ReadToEnd()' 'WordprocessingDocument' и voila! Примечание. Вам нужно переписать большую часть этого ... поскольку кажется, что вы не приближаетесь к нему самым простым способом, для начала. – gravity