c #Microsoft.Office.Interop.Word.Document to Stream

时间:2014-06-18 22:26:25

标签: c# ms-word add-in

我有一份有效的文件:

Microsoft.Office.Interop.Word.Document document = Globals.ThisAddIn.Application.ActiveDocument;

如何将此转换为流?

甚至更好,如何将活动文档发送到其他Web服务?

由于

2 个答案:

答案 0 :(得分:0)

哪些休息服务?如果它是SharePoint或类似的我以前只是调用SaveAs函数,如下所示:

Microsoft.Office.Interop.Word.Document document = Globals.ThisAddIn.Application.ActiveDocument;
document.SaveAs("https://www.contoso.sharepoint.com/Documents/Document1.docx");

编辑:P.S。您可以将任何内容序列化为Stream。 找到了答案here

public static MemoryStream SerializeToStream(object o)
{
    MemoryStream stream = new MemoryStream();
    IFormatter formatter = new BinaryFormatter();
    formatter.Serialize(stream, o);
    return stream;
}

public static object DeserializeFromStream(MemoryStream stream)
{
    IFormatter formatter = new BinaryFormatter();
    stream.Seek(0, SeekOrigin.Begin);
    object o = formatter.Deserialize(stream);
    return o;
}

答案 1 :(得分:0)

保存到临时文件,然后根据其他服务的要求读取文件内容,例如字节数组。如果不需要旧的Word格式,请使用Open XML SDK。