一,datatable导出Excel,用户可以选择路径,方法如下:

 /// <summary>/// DataTable导出到Excel/// </summary>/// <param name="dt">DataTable类型的数据源</param>/// <param name="FileName">文件名</param>/// <param name="httpContext">httpcontext</param>public void CreateExcel(DataTable dt, string FileName, HttpContext httpContext){httpContext.Response.Clear();httpContext.Response.Charset = "UTF-8";httpContext.Response.Buffer = true;httpContext.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");httpContext.Response.AppendHeader("Content-Disposition", "attachment;filename=\"" + System.Web.HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8) + ".xls\"");httpContext.Response.ContentType = "application/ms-excel";string colHeaders = string.Empty;string ls_item = string.Empty;DataRow[] myRow = dt.Select();int i = 0;int cl = dt.Columns.Count;for (int j = 0; j < dt.Columns.Count; j++){ls_item += dt.Columns[j].ColumnName + "\t"; //栏位:自动跳到下一单元格
        }ls_item = ls_item.Substring(0, ls_item.Length - 1) + "\n";foreach (DataRow row in myRow){for (i = 0; i < cl; i++){if (i == (cl - 1)){ls_item += row[i].ToString() + "\n";}else{ls_item += row[i].ToString() + "\t";}}httpContext.Response.Output.Write(ls_item);ls_item = string.Empty;}httpContext.Response.Output.Flush();httpContext.Response.End();}

前端页面调用方法如下:

                <a  href="Import.ashx" >导出Excel</a>

二,datatable导出Excel,保存到服务器上。方法如下:

 /// <summary>/// DataTable导出到Excel/// </summary>/// <param name="table">DataTable类型的数据源</param>/// <param name="file">需要导出的文件路径</param>public void dataTableToCsv(DataTable table, string file){string title = "";FileStream fs = new FileStream(file, FileMode.OpenOrCreate);StreamWriter sw = new StreamWriter(new BufferedStream(fs), System.Text.Encoding.Default);for (int i = 0; i < table.Columns.Count; i++){title += table.Columns[i].ColumnName + "\t"; //栏位:自动跳到下一单元格}title = title.Substring(0, title.Length - 1) + "\n";sw.Write(title);foreach (DataRow row in table.Rows){string line = "";for (int i = 0; i < table.Columns.Count; i++){line += row[i].ToString().Trim() + "\t"; //内容:自动跳到下一单元格}line = line.Substring(0, line.Length - 1) + "\n";sw.Write(line);}sw.Close();fs.Close();}

前端调用方法:

                     <a οnclick="Import()">导出Excel</a>function Import() {$.post("Import.ashx", {}, function (data) {alert("导出成功");});}

  

转载于:https://www.cnblogs.com/Angel-szl/p/10405538.html

ashx导出dataTable为Excel相关推荐

  1. 简洁的导出 datatable到excel,不用组件

    简洁的导出 datatable到excel var lines = new List<string>();string[] columnNames = dataTable.Columns. ...

  2. 导出datatable到excel然后让web客户端下载到本地

    下载excel在webform以及winform之间的区别还真是不少,之前我在9you做多了winform,会用到interop来下载word和excel,甚至在webbrower控件上显示这些信息, ...

  3. 从DataTable高效率导出数据到Excel

    首先从数据库读取数据到DataTable,这我就不提了,大家都明白.下面直接介绍如何从DataTable高效率导出数据到Excel中的方法,代码如下: 1 using Microsoft.Office ...

  4. [转]asp.net导出数据到Excel的三种方法

    原文出处:asp.net导出数据到Excel的几种方法(1/3) .asp.net导出数据到Excel的几种方法(2/3).asp.net导出数据到Excel的几种方法(3/3) asp.net导出到 ...

  5. Asp.Net 导出数据格式为Excel 数据的9种方案

    Excel 的强大之处在于它不仅仅只能打开Excel格式的文档,它还能打开CSV格式.Tab格式.website table 等多钟格式的文档.它具备自动识别行号,字符,格式化数字等功能,例如:如果你 ...

  6. [转]导出数据到Excel的几种方法

    [转]导出数据到Excel的几种方法 [转]C#导出到EXCEL     [原] http://community.csdn.net/Expert/topic/4570/4570895.xml?tem ...

  7. C#导入导出数据到Excel的通用类源码

    下面内容是关于C#导入导出数据到Excel的通用类的内容. public class ExcelIO { private int _ReturnStatus; private string _Retu ...

  8. ie如何导入html文件类型,Magicodes.IE: 导入导出通用库,支持Dto导入导出以及动态导出,支持Excel、Word、Pdf和Html。...

    Magicodes.IE 导入导出通用库,支持Dto导入导出以及动态导出,支持Excel.Word.Pdf和Html. 疯狂的徽章 GitHub Azure DevOps Build Status: ...

  9. 导出数据到Excel方法总结

    导出数据到Excel方法总结 一,问题的提出 近来在网上经常有人问怎样把数据导出到Excel中?针对这个问题网上也有很多资料.大都比较的琐碎.本人当前从事的项目中,刚好涉及到这些内容.就顺便做了一些归 ...

最新文章

  1. 中断处理程序上半部和下半部
  2. csuoj 1350: To Add Which?
  3. 《学习R》笔记:科学计算器、检查变量和工作区、向量、矩阵和数组、列表和数据框...
  4. Educational Codeforces Round 53C(二分,思维|构造)
  5. 人工智能TensorFlow工作笔记011---前向传播算法简介
  6. PHP 循环时间控制缓冲方法
  7. org manual翻译--2.7 纯文本列表
  8. 解决:AttributeError: ‘str‘ object has no attribute ‘decode‘
  9. python程序设计基础教程慕课版课后题答案薛景_Python程序设计基础教程(慕课版)...
  10. 夜神模拟器android版本修改器,夜神模拟器怎么用 夜神安卓模拟器使用方法大大全...
  11. 大疆 机器视觉 图像相关岗位的招聘要求
  12. npm install安装报错 npm ERR! code Z_BUF_ERROR 问题解决
  13. 计算机组成原理第一章知识点总结
  14. java-Book类
  15. 最小拍有纹波系统仿真实验Matlab,控制技术实验报告--基于Matlab的最少拍控制系统设计.doc...
  16. 关于7.0去掉Chrome后,平台默认浏览器报错webview not installed的问题
  17. 任正非首谈接班人制度
  18. Android程序员如何高薪接私活?十年老炮告诉你,看这一篇就够了
  19. angularjs ng-repeat
  20. 浙江农林大学本科毕业论文答辩和论文选题PPT模板

热门文章

  1. 遮罩,在指定元素上进行遮罩
  2. 2022-2028年中国硅质原料行业全景调研及投资前景展望报告
  3. 解决 win10 pycurl安装出错 Command python setup.py egg_info failed with error code 10 编译安装包 安装万金油...
  4. Anchor Boxes示例实战
  5. CVPR目标检测与实例分割算法解析:FCOS(2019),Mask R-CNN(2019),PolarMask(2020)
  6. 2021年大数据Spark(八):环境搭建集群模式 Standalone HA
  7. centos7 安装 Mysql 5.7.28,详细完整教程
  8. VIM配置攻略(最强干货加强版)
  9. [JS][C++]两题斐波那契数列:上台阶、triangle
  10. python join 的使用