asp.net导出数据到Excel的几种方法(2/3)

asp.net 导出数据源到Excel模版文件 最近在做asp.net项目,在此过程中用到Excel导出,我整理了导出数据源到Excel模版文件的共同方法,分享给大家! 如果大家还有更好的方法,可以分享给我,谢谢! 方法一:利用Microsoft.Office.Interop.Excel         首先要引用using Excel = Microsoft.Office.Interop.Excel;         /// 阅读详情

     继续前文,第二种方法是利用Excel的Com接口库来完成,这种方法的优点是功能强大,可像使用Excel程序一样来操作Excel文件,缺点是需要服务器安装Excel程序,且需要一定的安全配置。

一、准备工作:

1)安装Microsoft Excel

2)Com的安全设置。

   在命令行输入DCOMCNFG ,进入组件服务设置界面,如图:

打到Micorosoft Excel应用程序,如图:

右键点击属性,然后点击“安全”,将“启动和激活权限”、“访问权限”、“配置权限”都选择自定义,然后添加运行ASP.NET的用户(IIS6以上是NETWORK SERVICE以下是ASPNET),给予全部权限,如图所示:

3)配置文件目录权限,因为可能要保存文件到某目录中,所以要将该目录对ASP.NET用户予以写入权限。

 

二、使用

在VS.NET的工程中添加引用,如图:

 

如果添加引用后Excel组件不能正常使用(excel组件的左边显示一个黄色的感叹号),可以使用.Net工具进行组件转换。

转换方法,运行vs.net的命令行工具,进入Office目录,输入TlbImp Excel.exe即可,然后删除有问题的引用重新添加引用,这次使用浏览,然后引用Excel.DLL。

根据我的经验,vs2003可以直接引用Microsoft  Excel x.0 ObjectLibary,而vs2005就需要使用工具转换成DLL才可使用。

然后即可以使用Excel.Application对象来操作它了。

以下就一段简单的将GirdView的数据导出到Excel的代码,功能较简单,权当抛砖引玉了。

 

  this.GridView1.DataBind();



            Excel.ApplicationClass oExcel 
= new Excel.ApplicationClass();
            
object oMissing  = System.Reflection.Missing.Value;
            
            oExcel.Workbooks.Add(oMissing);
            Excel.Workbook oBook 
= oExcel.Workbooks[1];
            Excel.Worksheet oSheet 
= (Excel.Worksheet)oBook.Sheets[1];
            oSheet.Name 
= this.Title;
           
            Excel.Range rg;

            
for (int j = 0; j < this.GridView1.HeaderRow.Cells.Count; j++)
            
{
                rg 
= ((Excel.Range)oSheet.Cells[ 1, j + 1]);
                rg.FormulaR1C1 
= this.GridView1.HeaderRow.Cells[j].Text;
            }


            
for(int i = 0;i<this.GridView1.Rows.Count;i++)
            
{
                
for (int j = 0; j < this.GridView1.Rows[0].Cells.Count; j++)
                
{
                    rg 
= ((Excel.Range)oSheet.Cells[i + 2, j+1]);
                    rg.FormulaR1C1 
= this.GridView1.Rows[i].Cells[j].Text;
                }

            }

            rg 
= null;

            
string VirFileName = Guid.NewGuid().ToString() + ".xls";
            oBook.SaveAs(Server.MapPath(VirFileName), Excel.XlFileFormat.xlExcel9795, oMissing, oMissing, oMissing, oMissing, Excel.XlSaveAsAccessMode.xlExclusive,
                oMissing, oMissing, oMissing, oMissing, oMissing);
            oExcel.Workbooks.Close();
            oExcel.Quit();
           
            oSheet 
= null;
            oBook 
= null;
            oExcel 
= null;

            GC.Collect();

            Response.Redirect(VirFileName);

 

说明一下:为了Excel进程在使用完成后能彻底退出,需要将所有对象在使用完成后清空,像代码中的rg,oSheet,oBook,oExcel等。

asp.net 导出excel带图片 //此方法20条数据导出需要10秒左右,效率太低了,有时间需要再优化,关键是能导出图片了。 阅读详情

相关推荐

ASP.NET实现数据导出到Excel的全攻略

htmltable {th, td {th {pre {简介:在ASP.NET中导出网页数据到Excel是一项常见需求,特别是在数据分析和报表生成等场景。本文将详细介绍使用C#实现该功能的方法和安全性考虑。首先,将探讨使用服务器端技术或JavaScript库导出Excel的基本方法。随后,会深入介绍服务器端导出Excel时推荐的流式导出方法,如创建CSV文件和使用Open XML SDK生成xlsx文件。

weixin_42578963的博客 950

【导出EXCEL汇编】asp.net 将数据导出到excel中,并设置其格式

 添加引用:Microsoft   Excel   11.0   Object   Library ;添加:using Microsoft.Office.Interop.Excel;一、打开Excel文件============================ Microsoft.Office.Interop.Excel.Application excel1 = new Microsoft.Office.Interop.Excel.Application(); Workbook work

wonsoft的专栏 2万+

ASP.NET (C#) 实现Excel数据导出的全面指南

简介:在Web应用中,经常需要将数据库数据导出为Excel格式以便用户进行分析或离线处理。本文将详细介绍如何使用C#语言和Microsoft.Office.Interop.Excel库在ASP.NET中生成并导出Excel文件。我们将探讨创建Excel实例、创建工作簿和工作表、设置和格式化数据、保存和关闭工作簿、异常处理、Web环境下导出Excel文件的实现、性能优化以及安全考虑等关键步骤。此外,也会讨论在处理大量数据和高并发场景时,使用EPPlus等第三方库作为替代方案的可能。

weixin_28949937的博客 1323

asp.net Microsoft.Office.Interop.Excel导出Excel

关于使用Microsoft.Office.Interop.Excel类导出Excel文件,做单元格合并或者是获取单元格对象 asp.net 2.0 Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Intero

1550

专有钉钉小程序(浙政钉)开发搭建流程总览

最近公司有一个项目要做浙政钉,让我来负责做。靠,我一脸懵,开发了两年多不知道浙政钉是啥,感觉我眼界还是低了。然后就去百度、同事问了一圈才知道就是个钉钉小程序嘛,然后发布到浙政钉上了。就搭建项目跑起来我都肥了很多事,中间走了很多坑。正好领导让我写《钉钉小程序前端开发流程》,这想着也写个博客吧。下面就是整个流程及我所遇到的坑!

m0_53910290的博客 6355

数字IC后端实战:OCC电路时钟树综合的5个关键技巧(附Synopsys工具配置)

本文深入探讨了数字IC后端设计中OCC电路时钟树综合的实战技巧。针对工具自动平衡导致的绕线拥塞和时序问题,文章提出了分段处理的核心思路,并详细阐述了通过物理隔离、分段长树策略以及Synopsys工具链(如ICC2、PrimeTime)的精准配置来优化function clk与occ clk路径的关键方法,旨在提升时序收敛性和可制造性。

jwt8token的博客 855

基于MiniExcel的三种常用导出Excel方法(固定列导出、动态列导出、按模板导出)

为了方便代码编写和测试,把很多代码都放在一个class里面,实际开发根据需要放到对应的目录下即可。

xk_hypothesis的博客 4174

跟着Synopsys报告,一步步拆解车规芯片FMEDA计算(含公式与避坑点)

本文详细解析了车规芯片FMEDA计算的全流程,基于Synopsys报告拆解实战指南,涵盖基础失效率建模、安全机制效能评估及安全指标合成等关键步骤。通过公式解析、数据准备清单和避坑点分享,帮助工程师掌握ISO26262标准下的硬件量化分析技术,提升车载系统设计可靠性。

weixin_30460489的博客 195

基于asp.net的excel导入导出

新建aspx文件、代码大概如下: <!--导入Excel文件--> <table width="99%" border="0" align="center" cellpadding="0" id="searchtable" cellspacing="0" bgcolor="#CCCCCC"> ...

weixin_30337157的博客 173

【胡学长 带你学 Global Mapper 】如何将影像地图转换为国家2000坐标系

多部门联合开展工作坐标数据不匹配怎么办?Hi,我是胡学长!今天教大家如何利用Global Mapper将谷歌影像数据转换为国家2000坐标系影像数据 。

一起来交流学习吧 1万+

从配置字到实际运动:手把手教你用EtherCAT调试伺服电机的控制模式(以倍福TwinCAT3为例)

本文详细介绍了如何使用EtherCAT调试伺服电机的控制模式,以倍福TwinCAT3为例。从环境搭建、模式配置到状态机切换,提供了完整的操作指南和典型故障排查方法,帮助工程师快速解决‘配置字写入了但电机不转’等常见问题,提升工业自动化现场的调试效率。

weixin_42783709的博客 421

C# 将数据导出到Excel汇总

字号: 大大 中中 小小 C# 将数据导出到Excel汇总 一、asp.net中导出Excel的方法: 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上;一种是将文件直接将文件输出流写给浏览器。在Response输出时,t分隔的数据,导出Excel时,等价于分列,n等价于换行。 1、将整个htm...

weixin_30367945的博客 444

Crazyflie 2.1固件刷写与地址配置全攻略:从开箱到连接Crazyswarm

本文详细介绍了Crazyflie 2.1微型无人机的固件刷写、地址配置及与Crazyswarm系统的集成方法。从开箱检查到多机协同飞行,涵盖了硬件准备、固件刷写、无线电地址修改等关键步骤,帮助用户快速实现集群飞行控制。特别针对Crazyswarm系统集成提供了实用配置示例和调试技巧。

weixin_42530458的博客 405

ASP.NET数据导出到Excel

《ASP.NET数据导出到Excel》 开发工具与关键技术:Visual Studio / .NET 作者:肖春庆 撰写时间:2019年04月03日 在使用软件过程中,我们会将自己需要用的数据,以Excel工作表的形式进行数据导出,以便数据的使用或者光看。 引用NPOI插件,把NPOI添加在项目中,并引用进来(图1)。 选择项目路径,找到NPOI.dll确定引用,引用成功时,在资源管理器中的引用中...

weixin_44547775的博客 6230

YOLO11-pose关键点检测:训练实战篇 | 自己数据集从labelme标注到生成yolo格式的关键点数据以及训练教程

教会你如何用自己的数据集转换成对应格式的数据集以及如何训练YOLO11-pose关键点检测

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 5417

多智能体强化学习MATD3算法完整复现与分析

多智能体强化学习MATD3算法复现与分析摘要 MATD3算法是多智能体深度强化学习领域的重要进展,通过改进MADDPG算法,引入双Q学习、延迟策略更新和目标策略平滑等技术,显著提升了算法稳定性。本文完整复现了MATD3算法,详细解析了其数学原理,包括部分可观测马尔可夫博弈模型和TD3核心思想。在实现层面,设计了集中式Critic和分布式Actor的神经网络架构,采用PyTorch框架构建了Actor-Critic网络模块,包含精心设计的权重初始化和训练流程。该算法有效解决了多智能体环境中的非平稳性、信用分配

max500600的博客 529

asp.net导出数据到Excel的几种方法(1/3)

asp.net导出到Excel也是个老生常谈的问题,在此归纳一下。第一种是比较常用的方法。是利用控件的RenderControl功能,得到该控件生成的HTML,然后以Excel文件的类型输出到客户端。这种方法生成的其实是个HTML文件,只不过Excel支持HTML格式,所以使用起来似乎和真正的Excel文件没什么两样,但它终究不是Excel格式,它不能当作数据源供其他程序调用。这种实现起来

cpp2017(慕白兄)的专栏 8463

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

asp.net导出数据到Excel的几种方法(3/3)

继续前篇,第三种方法是利用OELDB数据访问对象操作Excel文件,达到将数据导出到Excel的目的,这种方法可能用的人不太多,缺点是必须有一个存在的Excel文件。优点是服务器不需要安装Excel,且生成的Excel是标准的Excel格式可以当作数据源使用。准备工作:1)先用准备一个Excel文件,这个Excel文件可以是空的,或是有一定格式的当做数据模板使用。2)将操作的目录给AS

cpp2017(慕白兄)的专栏 7770

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

ASP.NET 数据导出到excel文件给客户端下载的几种方法

http://blog.sina.com.cn/s/blog_40678c33010007zo.html ASP.NET 数据导出到excel文件给客户端下载的几种方法 (2007-04-13 10:27:20)    分类:C#/ASP.NET学习笔记 数据导出到excel文件给客户端下载的几种方法: 方法一:导出到csv文件,存放在服务器端任一路径,然后给客户下载 优点: 1、可以进行身份认证...

digga2012 976

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

asp.net中导出Excel的几种方法(示例)

2010年08月20日 星期五 17:36<br />在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上;一种是将文件直接将文件输出流写给浏览器。在Response输出时,t分隔的数据,导出Excel时,等价于分列,n等价于换行。<br /><br />1、将整个html全部输出Excel<br /><br />此法将html中所有的内容,如按钮,表格,图片等全部输出到Excel中。    Response.Clear();     <br

liaoxiaopeng的专栏 4708

在ASP.NET中GridView导出Excel的快速方法

此方法最有效,所以贴出来与大家分享 protected void btnOutExcel_Click(object sender, EventArgs e) { if (GridView1.Rows.Count > 0) { //调用导出方法 Ex

邱征响的专栏 8635

ASP.NET使用NPOI将数据导出Excel

【目的】在Web界面及WebAPI接口中实现将数据导出为Excel 【技术】使用了ASP.NET MVC和开源项目NPOI

郑林的专栏 2582

asp.net中导出到Excel的方法汇总及导出Excel/Csv格式数据最优方案(C#)

一、asp.net中导出Execl的方法: 在asp.net中导出Execl有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上;一种是将文件直接将文件输出流写给浏览器。在Response输出时,t分隔的数据,导出execl时,等价于分列,

2413

asp.net导出数据到Excel的三种方法

asp.net导出到Excel也是个老生常谈的问题,在此归纳一下。第一种是比较常用的方法。是利用控件的RenderControl功能,得到该控件生成的HTML,然后以Excel文件的类型输出到客户端。这种方法生成的其实是个HTML文件,只不过Excel支持HTML格式,所以使用起来似乎和真正的Excel文件没什么两样,但它终究不是Excel格式,它不能当作数据源供其他程序调用。这种实现起来

shaily读书学习 3204

ASP.NET MVC导出EXCEL

ASP.NET MVC导出EXCEL1、引用NPOI插件(NuGet程序包下载)2、将要导出的数据查询出来,创建表格,最后输出数据(实例演示) 1、引用NPOI插件(NuGet程序包下载) 2、将要导出的数据查询出来,创建表格,最后输出数据(实例演示) (1)我这里是根据前台传日期到控制器方法来查询到数据并生成EXCEL表格 (2)实例演示 public ActionResult Excel(string StartDate, string EndDate) { D

Hubery_one的博客 1120
上一篇: asp.net导出数据到Excel的几种方法(1/3)
下一篇: asp.net导出数据到Excel的几种方法(3/3)
cpp2017
博客等级 码龄24年 1435粉丝 12原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值