首页 > 代码库 > 使用NPOI将数据导出为word格式里的table
使用NPOI将数据导出为word格式里的table
开发环境:VS2013+MySQL5.5+EF6+NPOI2.0.6
格式:WinForm+CodeFirst
PS:vs2013的CodeFirst很方便了啊
CodeFirst方式就不再赘述了。
此Demo托管地址:http://git.oschina.net/uustudy/ExportImportWord.git
另外推荐下NPOI代码托管地址:https://github.com/tonyqus/npoi
作者博客:http://tonyqus.sinaapp.com/
使用nuget安装NPOI:
Install-Package NPOI
然后就来看看这些代码
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | private void btnExport_Click( object sender, EventArgs e) { var dbcontext = new BlogModel(); var list = dbcontext.ArticleInfos.ToList(); //创建document对象 XWPFDocument doc = new XWPFDocument(); //创建段落对象 XWPFParagraph p1 = doc.CreateParagraph(); //创建run对象 //本节提到的所有样式都是基于XWPFRun的, //你可以把XWPFRun理解成一小段文字的描述对象, //这也是Word文档的特征,即文本描述性文档。 //来自Tony Qu http://tonyqus.sinaapp.com/archives/609 XWPFRun r1 = p1.CreateRun(); r1.SetBold( true ); r1.SetText( "数据导出demo" ); r1.SetBold( true ); r1.SetFontFamily( "Arial" ); //设置雅黑字体 //创建表格对象列数写死了,可根据自己需要改进或者自己想想解决方案 XWPFTable table = doc.CreateTable(list.Count(), 4); for ( int i = 0; i < list.Count(); i++) { table.GetRow(i).GetCell(0).SetText(list[i].Id.ToString()); table.GetRow(i).GetCell(1).SetText(list[i].Title); table.GetRow(i).GetCell(2).SetText(list[i].Content); table.GetRow(i).GetCell(3).SetText(list[i].AddTime); } //保存文件到磁盘 FileStream out1 = new FileStream( "simpleTable.docx" , FileMode.Create); doc.Write(out1); out1.Close(); } |
代码上写的有较为详细的注释,有需要的朋友可以自己试试
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。