问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么在asp.net中点击一个链接下载一个准备好的pdf文件?

发布网友 发布时间:2022-09-13 04:34

我来回答

2个回答

热心网友 时间:2024-12-14 07:26

最简单的没有安全控制的方式:<a href='/苍老师全集.pdf'> 中日交流电子书</a>
如果需要权限控制的话,可以做成用一个ashx来处理的方式,在这个ashx的作用就是读取对应的的电子书文件,供下载。实现方式你可以找对应的代码,这里我就不列出了。追问pdf会被浏览器解析。 就是不是下载,是直接在浏览器打开了这个苍老师全集。这样就会被女朋友发现。。。然后就要出事的。有木有办法直接下载而不是在浏览器打开?

追答Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName));
switch (file.Extension)
{
case "gif":
Response.ContentType = "image/gif";
break;
case "zip":
Response.ContentType = "application/octet-stream";
break;
}
Response.TransmitFile(filePath);
上段代码是我摘抄的(很久没写代码了,见谅)。
Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。 Content-disposition其实可以控制用户请求所得的内容存为一个文件的时候提供一个默认的文件名,文件直接在浏览器上显示或者在访问时弹出文件下载对话框。
现在我想你已经知道怎么做了。

热心网友 时间:2024-12-14 07:26

直接用下载文件的方法就行了啊?有什么特殊要求?追问你好!我对这块不熟。能给我贴个实例代码吗?谢谢了

追答//流方式下载
protected void Button4_Click(object sender, EventArgs e)
{
string fileName = "aaa.zip";//客户端保存的文件名
string filePath = Server.MapPath("DownLoad/aaa.zip");//路径

//以字符流的形式下载文件
FileStream fs = new FileStream(filePath, FileMode.Open);
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
Response.ContentType = "application/octet-stream";
//通知浏览器下载文件而不是打开
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();

}
你懂的话最好自己试着做一下,这样才容易明白。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
悲观的意思是什么悲观是什么意思 ...坐立不安的。还总想挠挠手呀、胳膊什么的。这是怎么回事啊?是一种... ...胳膊肘麻,有时会麻到感觉大拇指根部疼,食指也有点... ...入睡感觉左胳膊从手腕到肩膀酥溜溜的酸,睁开眼又好了,什么原因... 胳膊上麻溜溜的 像是有小疙瘩 还很痒 有点硬 少量蔗糖,食盐,食油,食醋分别倒入一定量水中,并用筷子不断搅拌,观察... 将食盐 蔗糖 泥土 植物油与水混合 英文会计的provision对应中文会计的哪个词啊? 双人旁一个直一个心念什么,什么意思 白瓷有隙是成语吗 C# asp.net如何实现批量下载 民生投诉电话 如何将一个上的聊天记录共享给另一个? 如何将一个上的聊天记录共享给另一个? 可以分身吗 保证书给班主任 搞笑的 西红柿中维c高吗? 如何将一个上的聊天记录共享给另一个? 如何将一个上的聊天记录共享给另一个? ...楷体”两个字的字体包,不要楷体GB2312、华文行楷等。 湖北宜化是什么股啊?湖北宜化前三季度业绩?湖北宜化股属于什么股?_百 ... 2020年湖北gdp会下降吗? 中信·香水湾的介绍 香水湾的基本资料 平板硫化机开机界面能长时间亮么? 请问一下柯字的来历 50字 柯姓的来源介绍 20000毫安充电宝充满电需要多少wh? 坚果Pro2s全面屏手势如何用 华硕笔记本自带鼠标接线顺序 《java web 经典模块开发》 和《asp.net 经典模块开发》 pdf 文件 读博的话,中国科学院上海精密机械光学研究所和上海理工的光信息科学与... 强场激光物理国家重点实验室(中国科学院上海光学精密机械研究所... 中国居民75%的财富都集中在房产上,为何买房是现代人的首要任务?_百度... 梦见给孩子喂母乳 拍出最清晰宇宙照片的韦伯望远镜,究竟什么来头? 谁能给我介绍一下大鸿酵博士这个牌子啊? 大鸿酵博士品牌的酵素可靠吗? 一个石字旁,一个人,一个工读什么,啥意思 vivo怎么恢复以前的系统版本 设立中公司的法律地位是怎样的 纳爱斯集团有限公司电话是多少? 纳爱斯的总部地址是什么? 想做电商销售纳爱斯集团产品去哪里联系公司 小程序自定义组件如何自适应高度 rem的作用与运用,小程序为什么用rpx为单位 有个韩剧是发生在海边的故事 我不知道名字 问一下又没有人知道有关名 ... 奥特曼都有哪些英文名字? 徽派民居的结构 房价是涨还是降