标签:
1.文件下载到客户端
//WriteFile实现下载
protected void Download_Click(object sender, EventArgs e)
{
string fileName = "20151223Test.doc";//客户端保存的文件名
//string filePath = Server.MapPath("DownLoad/aaa.txt");//路径
string filePath = Server.MapPath(@"files\test.doc");//路径
FileInfo fileInfo = new FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
//Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End();
}
//TransmitFile实现下载
protected void DownLoadTF_Click(object sender, EventArgs e)
{
Response.ContentType = "application/x-zip-compressed";
Response.AddHeader("Content-Disposition", "attachment;filename=z.zip");
string filename = Server.MapPath(@"files\DownloadsText.zip");
Response.TransmitFile(filename);
//Response.TransmitFile 需要 :Microsoft .NET Framework 1.1 Service Pack 1 支持!!
}
//流方式下载
protected void DownLoadFL_Click(object sender, EventArgs e)
{
string fileName = "20151223aaa.doc";//客户端保存的文件名
//string filePath = Server.MapPath("DownLoad/aaa.txt");//路径
string filePath = Server.MapPath(@"files\租户装修手册-印象城.doc");//路径
//以字符流的形式下载文件
using (FileStream fs = new FileStream(filePath, FileMode.Open))
{
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
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();
}
}
//流方式下载 2
protected void DownLoadFL2_Click(object sender, EventArgs e)
{
string fileName = "20151223aaa.doc";//客户端保存的文件名
//string filePath = Server.MapPath("DownLoad/aaa.txt");//路径
string filePath = Server.MapPath(@"files\租户装修手册-印象城.doc");//路径
//以字符流的形式下载文件
using (FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
byte[] bytes = new byte[(int)fs.Length];
using (BinaryWriter bw = new BinaryWriter(fs))
{
bw.Write(bytes);
bw.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();
}
}
}
标签:
原文地址:http://www.cnblogs.com/wangfuyou/p/5069054.html