教你如何把.NET数据库导出到EXCEL(图文)

来源:互联网 发布:人物杂志 知乎 编辑:程序博客网 时间:2024/05/01 23:03

   这个方法需要浏览器创建Activex,需要勾选未知签名的Activex控件。但是这样会降低浏览器的安全性,所以总是在打开浏览器时出现这样提示用户还原默认安全设置的提示。如果不是很了解,还原后还是不能创建ActiveXObject对象就无法创建word的对象;所以这个方法有很大的局限性。


问题一:

 

     读取Excel文件时出现错误“HRESULT中的异常:0X800A03EC”。

              查阅MSDN,微软的同志们是这样跟我说的。就是我每次加入到工作薄中的单元格的内容太多,太长导致的。我试了试,因为我之前用的中文最后发现不是这个问题。而是我的循环里面从0开始的。Nowbook.Sheets[1].Cells[1, i],这样导致根本就无法创建这个单元格就更别谈什么插入内容了。所以这样看来,微软的大牛把我给忽悠了一番啊!哈哈

 

     问题二:

 

            

 

            看到这个我首先想打的是可能会不会是权限的问题,我很快否定这个。因为根据代码,我已经创建了这个xls文件。最后发现我的文件不是放在了指定的我访问的文件路径,这样就对了。所以我这个用服务器的路径这样就可以存在指定的物理路径了。

 

           默认情况下:使用Nowbook.saveas保存是在我的文档文件夹下的。

 

                               

 

           使用服务器地址

 

            //保存在服务器中指定的物理路径文件
            string strpath = Server.MapPath("~/UploadFile/DownFile") + "/" + "导入口语成绩模板" + ".xls";
            //指定文件夹存放,其实是复制一份源文件
            Nowbook.SaveCopyAs(strpath);

            就可以了。

      总结

             其实对于后种方式也是有缺陷的,在打开的时候总是会提示我们是否要打开文件格式好扩展名不匹配的文件。这个方法,主要是对于excel这么一个非托管的类来实现的。在下面的链接里面有其他的方法,大家有兴趣的可以研究研究。

         

来自百度文库:  


    MSDN: 如何使用 Visual C# 2005 或 Visual C# .NET 向 Excel 工作簿传输数据


    如何:使用 COM Interop 创建 Excel 电子表格(C# 编程指南)



    如何在 Microsoft Visual C# .NET 中实现 Microsoft Excel 自动化


    C#中创建、打开、读取、写入、保存Excel的一般性代码


   与 XML 一起使用 Visual Basic 和 ASP 生成 Excel 2003 工作簿


blog.sina.com.cn/s/blog_7d1ab6bd0101jcrh.html
blog.tianya.cn/blogger/post_read.asp?BlogID=5051216&PostID=61774117
wumaosheng.diandian.com/
wumaosheng.diandian.com/post/2014-06-01/40061862634
wumaosheng12.blog.163.com/blog/static/23647200320145185420105/
blog.eastmoney.com/wumaosheng1/blog_161035531.html
blog.cnfol.com/wumaosheng/article/1401591703-93106784.html
new.blog.cnfol.com/wumaosheng/article/1401591703-93106784.html
wumaosheng1.lofter.com/
wumaosheng1.lofter.com/post/3d672f_1506d74
wumaosheng.blog.china.com/201406/13084891.html
www.douban.com/note/355160755/
www.kaixin001.com/repaste/160951886_9266975228.html
t.sohu.com/u/1825735052
t.qq.com/wumaosheng2014

0 0