打开csv文件并将其显示给用户(.Net)



在.net网站项目中,我有一个csv文件(位于项目的app_data文件夹中(,用户单击按钮后,我会将数据写入其中。现在我想打开文件并向用户显示内容(就像他在windows shell中点击它一样(,这样用户就可以检查数据并将文件保存到他想要的文件夹中。我怎样才能做到这一点?

为什么希望服务器能够在客户端上打开文件?用关联的shell处理程序打开任意文件将是一个很大的安全漏洞。

您可以将数据显示为网站的一部分,然后提供下载。

有必要将服务器响应重定向到csv文件。

string path = context.Server.MapPath(String.Format(@"~/App_Data/" + csvFile));
using (FileStream fs = new FileStream(path, FileMode.Open))
            {
                long FileSize = fs.Length;
                byte[] Buffer = new byte[(int)FileSize];
                fs.Read(Buffer, 0, (int)FileSize);
                Response.Clear();
                Response.AddHeader("Content-Disposition", "attachment;filename=Export.csv");
                Response.ContentType = "text/csv";
                Response.BinaryWrite(Buffer);
                Response.Flush();
            }

客户端接收文件并可以打开和编辑它。

最新更新