`
fei5808335
  • 浏览: 20948 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

asp.net datatable导出(转)

    博客分类:
  • C#
阅读更多
/// <summary>
        /// 将DataTable导出为Excel(csv)
        /// </summary>
        /// <param name="table">DataTable数据源</param>
        /// <param name="name">文件名</param>
        public static void ExportToSpreadsheet(DataTable table, string name)
        {
            Random r = new Random();
            string rf = "";
            for (int j = 0; j < 10; j++)
            {
                rf = r.Next(int.MaxValue).ToString();
            }

            HttpContext context = HttpContext.Current;
            context.Response.Clear();

            context.Response.ContentType = "text/csv";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;
            context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + name + rf + ".xls");
            context.Response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble());

            foreach (DataColumn column in table.Columns)
            {
                context.Response.Write(column.ColumnName + ",");
                //context.Response.Write(column.ColumnName + "(" + column.DataType + "),");
            }

            context.Response.Write(Environment.NewLine);
            double test;

            foreach (DataRow row in table.Rows)
            {
                for (int i = 0; i < table.Columns.Count; i++)
                {
                    switch (table.Columns[i].DataType.ToString())
                    {
                        case "System.String":
                            if (double.TryParse(row[i].ToString(), out test)) context.Response.Write("=");
                            context.Response.Write("\"" + row[i].ToString().Replace("\"", "\"\"") + "\",");
                            break;
                        case "System.DateTime":
                            if (row[i].ToString() != "")
                                context.Response.Write("\"" + ((DateTime)row[i]).ToString("yyyy-MM-dd hh:mm:ss") + "\",");
                            else
                                context.Response.Write("\"" + row[i].ToString().Replace("\"", "\"\"") + "\",");
                            break;
                        default:
                            context.Response.Write("\"" + row[i].ToString().Replace("\"", "\"\"") + "\",");
                            break;
                    }
                }
                context.Response.Write(Environment.NewLine);
            }

            context.Response.End();

        }


public static void ExporttoExcel(HttpContext context, DataTable table)
        {
            context.Response.Clear();
            context.Response.Buffer = true;
            context.Response.ContentType = "application/vnd.ms-excel";
            context.Response.AppendHeader("Content-Disposition", "attachment; filename=" + DateTime.Now.Ticks + ".xlsx");
            context.Response.Write("<table border=1><tr bgcolor=#AAAAAA >");

            foreach (DataColumn item in table.Columns)
            {
                context.Response.Write("<th>" + item.ColumnName + "</th>");
            }

            context.Response.Write("</tr>");

            foreach (DataRow row in table.Rows)
            {
                string htmltable = "<tr>";
                for (int i = 0; i < table.Columns.Count; i++)
                {
                    htmltable += "<td style='vnd.ms-excel.numberformat:@'>" + row[i].ToString() + "</td>";
                }
                htmltable += "</tr>";
                context.Response.Write(htmltable);
            }
            context.Response.Write("</table>");
            context.Response.End();
        }


分享到:
评论

相关推荐

    【ASP.NET编程知识】asp.net DataTable导出Excel自定义列名的方法.docx

    在ASP.NET编程中,将DataTable数据导出到Excel文件是一项常见的需求。在处理这个任务时,我们可能需要自定义Excel文件中的列名以满足特定的需求。以下是一个使用NPOI库来实现此功能的方法。 首先,为了使用NPOI库...

    asp.net DataTable 导出,导出 excel , NPOI 使用方法

    以下是使用NPOI将DataTable导出到Excel的步骤: 1. **引入NPOI库**:首先,你需要将NPOI库添加到你的项目中。由于提供的文件名列表中包含"NPOI.dll",这表明你已经有了这个库的二进制文件。你可以通过右键点击项目 ...

    Asp.net DataTable导出到Excel所用组件(SQLServer_Export_Excel)

    本话题主要讨论的就是如何利用`ClosedXML.dll`和`DocumentFormat.OpenXml.dll`这两个组件将Asp.net中的DataTable导出到Excel。 `ClosedXML.dll`是一个流行的.NET库,专门用于创建和操作Excel文件,提供了友好的API...

    asp.net DataTable导出Excel自定义列名的方法

    在实际开发中,常常需要将***中的DataTable数据导出到Excel文件中,并且有时候还需要对导出的Excel文件的列名进行自定义设置,以满足特定的格式要求或业务需求。 本文所介绍的,就是一种在***应用中,将DataTable...

    asp.net里导出excel表方法汇总

    ### ASP.NET 中导出 Excel 表的方法汇总 在 ASP.NET 应用程序中,导出数据到 Excel 是一个常见的需求。下面将详细介绍 ASP.NET 中几种常见的导出 Excel 的方法及其实现原理。 #### 方法一:使用 DataSet 直接生成 ...

    简单实用的.net DataTable导出Execl

    标题中的".net DataTable导出Excel"是指在.NET框架下,使用DataTable对象的数据处理能力,并将其内容导出为Excel文件的过程。这是一个常见的需求,特别是在数据处理和报表生成的场景中。以下将详细介绍如何实现这一...

    asp.net 导出 CSV

    ### ASP.NET导出CSV知识点详解 #### 一、ASP.NET导出CSV的原理与实现步骤 在ASP.NET中导出CSV文件是一种常见的需求,尤其是在处理大量数据时。CSV(Comma-Separated Values)文件是一种存储表格数据的简单文件格式...

    asp.net实现导出DataTable数据到Word或者Excel的方法

    在ASP.NET中,导出DataTable数据到Word或Excel是一项常见的需求,这通常涉及到对Office文件的操作。本方法提供了一个实用的解决方案,通过处理HTTP响应来生成动态的Word或Excel文件,然后将其作为附件发送给用户下载...

    asp.net 数据库导出excel 方法

    asp.net 数据库导出excel 方法 在本篇文章中,我们将讨论使用 ASP.NET 将数据库数据导出到 Excel 文件的方法。该方法使用 DataRow 对象将数据写入到 HTTP 输出流中,并将其作为 Excel 文件下载。 首先,我们需要...

    asp.net 导出数据与图片到excel

    在标题“asp.net 导出数据与图片到excel”和描述中提到的,是关于如何在ASP.NET环境下将数据和图片导出到Excel文件的一个主题。这是一个常见的需求,尤其是在数据分析、报表生成或数据共享时。以下是一些相关的知识...

    asp.net导入导出excel表,导入到sql数据库

    1. **使用DataTable导出**:DataTable是.NET框架中的一个强大工具,它可以存储和操作数据。要将其导出为Excel,首先我们需要填充DataTable,然后利用Response对象的Write方法,配合Content-Disposition和ContentType...

    基于ASP.NET实现的DataTableToExcel(Excel导入导出)实例源码

    本文将详细介绍如何基于ASP.NET和C#实现DataTable到Excel的转换以及Excel数据的导入,利用提供的"ExcelHelper(Excel导入导出)实例源码"进行深入讲解。 首先,让我们理解DataTable和Excel之间的关系。DataTable是...

    ASP.NET导出数据到Excel.rar

    在ASP.NET中,导出数据到Excel是常见的需求,特别是在数据报告、数据分析和数据共享时。这个压缩包"ASP.NET导出数据到Excel.rar"很可能包含了实现这一功能的代码示例或教程。 在ASP.NET中,导出数据到Excel主要涉及...

    ASP.NET 页面中 DataTable 导出EXCEL的例子

    在ASP.NET开发中,将数据从DataTable导出到Excel是一种常见的需求,这通常涉及到Web应用程序的数据处理和报表生成。在本例中,我们将探讨如何在ASP.NET页面中实现这一功能,利用C#语言和Microsoft Office Interop库...

    asp.net打印 导出excel方法

    ASP.NET打印和导出Excel是Web应用中常见的需求,涉及到数据呈现和交互的不同方式。本文将探讨两种主要的打印方法和导出Excel的几种策略,分析它们的优缺点。 首先,我们来看数据打印的方法: 1. **客户端脚本方式*...

    asp.net里导出excel的方法

    ### ASP.NET 中导出 Excel 的方法详解 在 ASP.NET 应用程序开发中,导出数据到 Excel 是一个常见的需求。下面将详细介绍 ASP.NET 中三种不同的导出 Excel 的方法,并对每种方法进行深入解析。 #### 方法一:使用 ...

    asp.net实现数据导入导出Excel 多Sheet表

    ### ASP.NET 实现数据导入导出到 Excel 中的多 Sheet 表 在 ASP.NET 开发过程中,经常需要处理数据的导入导出功能,特别是在需要将数据分门别类地存储到不同的工作表(Sheet)中时,这便涉及到 Excel 的多 Sheet ...

    基于asp.net导出Excel文本

    "基于asp.net导出Excel文本"这个主题涉及到将数据从数据库(通常是DataTable类型)转换为Excel格式,以便用户可以下载、查看或者进一步分析。下面将详细介绍这个过程涉及的关键知识点。 1. **DataTable对象**:在...

    asp.net 导出ecxel 多个sheet 多个表

    在ASP.NET中,导出Excel是一项常见的需求,特别是在数据分析、报表生成或数据交换等场景下。本示例将深入探讨如何在ASP.NET中实现导出包含多个Sheet和多个表格的Excel文件,这对于处理复杂的数据结构非常有用。 ...

Global site tag (gtag.js) - Google Analytics