Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C#兼容各大浏览器的文件下载实例详解

C#兼容各大浏览器的文件下载实例详解

巴扎黑
巴扎黑asal
2017-05-15 10:19:102763semak imbas

本文给大家分享一段实例代码关于css实现文件下载功能,需要的的朋友参考下吧

1、css代码

public void DownFile(string filePath ,string fileName )
{
 // filePath 文件路径 例如:/File/记录.xlsx 
 // fileName 文件名称 例如:记录.xlsx (要后缀哦)
Encoding encoding; // 申明编码
string outputFileName; // 输出名字
Debug.Assert(HttpContext.ApplicationInstance.Request.UserAgent != null, "HttpContext.ApplicationInstance.Request.UserAgent != null");
string browser = HttpContext.ApplicationInstance.Request.UserAgent.ToUpper();
// 微软的浏览器和ie过滤
if (browser.Contains("MS") && browser.Contains("IE"))
{
outputFileName = HttpUtility.UrlEncode(filePath);
encoding = Encoding.Default;
}
//火狐
else if (browser.Contains("FIREFOX"))
{
outputFileName = fileName;
encoding = Encoding.GetEncoding("GB2312");
}
else
{
outputFileName = HttpUtility.UrlEncode(fileName);
encoding = Encoding.Default;
}
string absoluFilePath = Server.MapPath(filePath); //获取上传文件路径
FileStream fs = new FileStream(absoluFilePath, FileMode.Open);
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close(); //关闭流,释放资源
HttpContext.ApplicationInstance.Response.Clear();
HttpContext.ApplicationInstance.Response.Buffer = true;
HttpContext.ApplicationInstance.Response.ContentEncoding = encoding;
HttpContext.ApplicationInstance.Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", string.IsNullOrEmpty(outputFileName) ? DateTime.Now.ToString("yyyyMMddHHmmssfff") : outputFileName));
Response.BinaryWrite(bytes);
Response.Flush();
HttpContext.ApplicationInstance.Response.End();
}

2、html代码

前端HTML 写一个a标签就好:如 295f5f76052a1c1c3cb1b85d4e7734d8文件下载5db79b134e9f6b82c0b36e0489ee08ed

【相关推荐】

1. <span style="color: rgb(255, 0, 0);"><strong>特别推荐</strong></span>:<a href="http://www.php.cn/xiazai/gongju/714" target="_self">“php程序员工具箱”V0.1版本下载</a>

2. <a href="http://www.php.cn/course/list/47.html" target="_self">ASP免费视频教程</a>

3. <a href="http://www.php.cn/course/380.html" target="_self">李炎恢ASP基础视频教程</a>

Atas ialah kandungan terperinci C#兼容各大浏览器的文件下载实例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn