现在的位置: 首页 > 综合 > 正文

c#将数据导入Excel另类方法

2011年03月10日 ⁄ 综合 ⁄ 共 14594字 ⁄ 字号 评论关闭

今天公司突然给个Excel模版,要将数据导入。这方法网上应该一搜一大把,但奇怪的是找了几种方法居然不理想。其中有一篇,大概是讲用模版且分页导出Excel。试了作者的例子。使用它提供的方法必须分页,每页25条,多了还不行。显示不符合我的要求。

使用ASP.NET中的DATAGRID控件可以使用导出Excel。但其导出的本质是Response一段HTML代码,并且设置输出类型为Excel即可。其实这种方法与控件没有关系,换言之,只要你设置了HTML代码,以Excel类型输出到页面,即可实现任意你想要的格式。

但现在的问题是这个格式 可能并不是你的HTML代码在页面上体现的形式,因为你定义的CSS可能输出到Excel它并不支持。那么怎么办呢?

我突然想到Excel要是有导出HTML功能岂不美栽?打开Excel。点击 文件。出现在菜单中 出现了 另存为网页。在接下来出现的对话框中 选择 工作表,而不要选择 整体工作薄,因为如果选择整个工作薄,这样导出后它会将CSS存为单独文件。我们稍后使用使用起来不便。

选择保存后,会生成一个单一的HTML文件,并且CSS样式都有,这里的CSS样式很重要,它在Excel中会得到支持。

然后我们可以读取这个HTML代码,需要注意的是,需要先把<html</html>这二个标记去掉。否则输出不了Excel。同时最好去掉这些代码中的JS代码。

然后你可以将你的数据读取放入到DataTable中,然后循环<tr>放入,即可!

下面给出一个示例代码。

 

Code
【上篇】
【下篇】

抱歉!评论已关闭.