1

我一直在为 Word 编写插件。我将文档作为byte[]. 我需要在 Word 中打开它。

4

3 回答 3

1
using System.IO;

public void MyWordFileReaderMethod()
{
   string filePath = @"c:\example.docx";
   var file = File.ReadAllBytes(filePath);
}

该对象file将包含您需要的内容。

编辑 1

    ProcessStartInfo startInfo = new ProcessStartInfo();
    startInfo.FileName = "WINWORD.EXE";
    startInfo.Arguments = @"c:\tempfile.docx";
    Process.Start(startInfo);

如果您需要用 word 启动内存文件,则只能将其放入临时文件并使用上面的代码。如果我没记错的话,2 个进程不能跨进程边界共享数据。

于 2013-09-27T04:40:18.430 回答
1

这不可能。Word 无法从内存流中打开文档。您必须使用(临时)文件。

于 2013-09-28T11:10:56.727 回答
0

如果您有一个文件存储在 HDD 上并想在 MS Word 中打开它,那么您为什么要将它装载到内存中。您可以使用 Process Class 直接打开它

Process wordDoc = new Process();
wordDoc.FileName = @"c:\example.docx";
wordDoc.Start();
于 2013-09-27T04:59:22.453 回答