首页 > 解决方案 > 如何使用 Microsoft.Office.Interop.Word 将 byte[] 从 dtb 转换为文档

问题描述

我有来自数据库的 byte[] 以前是 .docx。现在我想取回这个 .docx 并使用 Interop.Word 使用它。我遵循了许多教程如何做到这一点,但总是以:文件似乎已损坏。我试过什么:

1.

var tmpFile = Path.GetTempFileName();
File.WriteAllBytes(tmpFile, fileBytes);
Application app = new Application();
Document doc = app.Documents.Open(tmpFile);

2.

var tmpFile = Path.GetTempFileName();
FileInfo fileInfo = new FileInfo(tmpFile);
fileInfo.Attributes = FileAttributes.Temporary;
File.WriteAllBytes(tmpFile, fileBytes);
Application app = new Application();
Document doc = app.Documents.Open(tmpFile);

3.

var tmpFile = Path.GetTempFileName();
string newPath = tmpFile.Replace(".tmp", ".docx");
File.Move(tmpFile, newPath);
File.WriteAllBytes(newPath, fileBytes);
Application app = new Application();
Document doc = app.Documents.Open(newPath);

每个人似乎都这样做,它适用于他们,但不适用于我。

标签: c#asp.netms-word

解决方案


推荐阅读