我想从我的网站下载一个文本文件到用户的电脑,而不提示他保存文件的位置。
我已经使用下面的代码进行了尝试:
Response.TransmitFile("G:\Medical Reporting\Medical\Users\Vishal\Uploaded\Key.txt")
Response.End()
但是每次我只是被重定向到新页面并且文件的所有内容都写在那里。我不想显示文件的内容,但我想下载文件。
我想从我的网站下载一个文本文件到用户的电脑,而不提示他保存文件的位置。
我已经使用下面的代码进行了尝试:
Response.TransmitFile("G:\Medical Reporting\Medical\Users\Vishal\Uploaded\Key.txt")
Response.End()
但是每次我只是被重定向到新页面并且文件的所有内容都写在那里。我不想显示文件的内容,但我想下载文件。
不可能——这是一个安全问题,否则世界会试图在用户机器上保存各种文件。
如果它是一个 Intranet,每个用户都可以在网络上拥有一个可供 Web 应用程序访问的共享驱动器,并使用IO.File.Copy
方法简单地复制文件。
更新
要提示用户下载文件,您可以使用以下代码,该代码将在单击按钮之类的内容后触发:
此示例适用于图像,但您可以更改 ContentType 文件名以满足您的需要。
Response.ContentType = "image/jpeg";
// this is the important bit that gives the user the prompt to save
Response.AppendHeader("Content-Disposition","attachment; filename=yourfile.jpg");
Response.TransmitFile(Server.MapPath("~/yourfile.jpg"));
Response.End();