I'm trying to create an empty Word document (DOCX) using OpenXML SDK 2.5. The following code is not working for me because MainDocumentPart is null.
public static void CreateEmptyDocxFile(string fileName, bool overrideExistingFile)
{
if (System.IO.File.Exists(fileName))
{
if (!overrideExistingFile)
return;
else
System.IO.File.Delete(fileName);
}
using (WordprocessingDocument document = WordprocessingDocument.Create(fileName, WordprocessingDocumentType.Document))
{
const string docXml =
@"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?>
<w:document xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"">
<w:body>
<w:p>
<w:r>
<w:t></w:t>
</w:r>
</w:p>
</w:body>
</w:document>";
using (Stream stream = document.MainDocumentPart.GetStream())
{
byte[] buf = (new UTF8Encoding()).GetBytes(docXml);
stream.Write(buf, 0, buf.Length);
}
}
}