如何将二进制文件数据转换为具有给定 MIME 类型的物理类型

How to Convert Binary file data to a physical type with a given MIME Type

我有一个数据库 table (tbl_document),其中包含随着时间推移上传到其中的文件的详细信息。

我想编写一个控制台应用程序来将这些文件下载到给定位置。

table 有三个信息,我应该使用它们:

FileContents varbinary 格式; 每个文件的 MIME 类型 (contentType),例如 nvarchar 格式:

application/x-zip-compressed application/msword application/vnd.openxmlformats-officedocument.wordprocessingml.document application/pdf application/pdf

在 MVC 中,我会做这样的事情来执行此任务:

public FileContentResult DownloadFile()
{
                FileContentResult result = new FileContentResult(file.FileContents, file.ContentType);
                result.FileDownloadName = file.FileName;
                return result;
}

我尝试过其他方法,比如这个:

WebClient myWebClient = new WebClient();
 FileContentResult result = new FileContentResult(fileContents, contentType);

我无法使用上述任何方法真正保存文件。请你帮忙。

非常感谢。

其实我是这样解决的:

 // fileContents is the binary file being downloaded; I didn't need to use the MIME Types
        MemoryStream ms = new MemoryStream(fileContents);
        //write to file
        FileStream file = new FileStream(filePath, FileMode.Create, FileAccess.Write);
        ms.WriteTo(file);
        file.Close();
        ms.Close();