博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
点滴积累【C#】---C#实现下载word
阅读量:5787 次
发布时间:2019-06-18

本文共 2067 字,大约阅读时间需要 6 分钟。

效果:

思路:

简单的有两种方式下载,一种是流下载,一种是WriteFile下载。以下是使用WriteFile下载。

代码:

1 protected void LinkButton1_Click(object sender, EventArgs e) 2         { 3             try 4             { 5                 //WriteFile实现下载(word) 6                 string fileName = "qingpingguo.docx";//客户端保存的文件名 7                 string filePath = Server.MapPath("~\\excel\\" + tb1.Text);//路径 8  9                 FileInfo fileInfo = new FileInfo(filePath);10                 Response.Clear();11                 Response.ClearContent();12                 Response.ClearHeaders();13                 Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);14                 Response.AddHeader("Content-Length", fileInfo.Length.ToString());15                 Response.AddHeader("Content-Transfer-Encoding", "binary");16                 Response.ContentType = "application/octet-stream";17                 Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");18                 Response.WriteFile(fileInfo.FullName);19                 Response.Flush();20                 Response.End();21             }22             catch (Exception ex)23             {24                 Response.Write(ex.Message);25             }26 27             /*************以下为流方式下载****************/28             //string fileName = "aaa.txt";//客户端保存的文件名29             //string filePath = Server.MapPath("DownLoad/aaa.txt");//路径30 31             ////以字符流的形式下载文件32             //FileStream fs = new FileStream(filePath, FileMode.Open);33             //byte[] bytes = new byte[(int)fs.Length];34             //fs.Read(bytes, 0, bytes.Length);35             //fs.Close();36             //Response.ContentType = "application/octet-stream";37             ////通知浏览器下载文件而不是打开38             //Response.AddHeader("Content-Disposition", "attachment;  filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));39             //Response.BinaryWrite(bytes);40             //Response.Flush();41             //Response.End();42 43         }

 

转载于:https://www.cnblogs.com/xinchun/p/3488247.html

你可能感兴趣的文章
瓜子二手车的谎言!
查看>>
Python基础:搭建开发环境(1)
查看>>
[转]使用Git Submodule管理子模块
查看>>
DICOM简介
查看>>
Scrum之 Sprint计划会议
查看>>
最小化托盘程序
查看>>
List<T> to DataTable
查看>>
[Java]Socket和ServerSocket学习笔记
查看>>
stupid soso spider
查看>>
[雪峰磁针石博客]数据仓库快速入门教程1简介
查看>>
海康威视:工程项目不是我们的目标,对创新业务发展充满信心 ...
查看>>
苹果自动驾驶“排名垫底”,每1.1英里就发生一次脱离 ...
查看>>
作业三——求左部分中的最大值减去右部分最大值的绝对值,最大是多少 ...
查看>>
MySQL查询优化之索引
查看>>
【资料下载】Python 第九讲——灵活运用docker,实现深度学习的环境搭建 ...
查看>>
面经and重点汇总
查看>>
WordPress 5.1.1 发布,修复 CSRF 漏洞
查看>>
Android 多线程之阻塞队列
查看>>
Go语言命令行工具介绍-3
查看>>
聊聊ES7与ES8特性
查看>>