.Net 文件导出下载

//1.首先要有文件路径    2.要知道文件扩展名   3.根据扩展名在Provider Map对应的contentType    4.return FileSteam
public IActionResult ExportWorkList(string filePath)
        {
            var stream = System.IO.File.OpenRead(filePath);  //将文件读成文件流
            string fileExt = Path.GetExtension(filePath);   //获取扩展名
            var provider = new FileExtensionContentTypeProvider();  //实例化一个文件扩展名的供应库
            var memi = provider.Mappings[fileExt];   //如果是excel文件,"Application/x-msexcel"   根据不同的文件扩展名Map Provider不同的ContentType Provider中集成了很多格式的文件
            return File(stream, memi, Path.GetFileName(filePath)); //public virtual FileStreamResult File(Stream fileStream, string contentType, string fileDownloadName);
        }

下载项目文件夹的文件

//
public IActionResult DownLoadTemplate()
        {
            var filePath = Directory.GetCurrentDirectory() + @"\UploadFileTemplate";//
            var strFileName = "Upload digital template.xlsx";
            var strPath = filePath + @"\\" + strFileName;//
            var stream = System.IO.File.OpenRead(strPath);//因为有已知的文件扩展名  所以可以直接传入contentType
            return File(stream, "Application/x-msexcel", strFileName);
        }

 

posted @ 2022-08-19 11:55  派大没有星  阅读(118)  评论(0编辑  收藏  举报