众所周知,NPOI对xls和xlsx两个版本的excel文档的操作并没有一个统一的支持, 程序若想兼容这两个版本的操作,必须根据excel版本分别去调用HSSF和XSSF这两套操作库, 之前一直不明白NPOI为什么不能提供一个统一的操作接口,现在我还是不明白, 也正是因为存在这个区别才导致了现在的问题! 插入图片,代码非常简单, IDrawing patriarch = sheet.CreateDrawingPatriarch(); //将图片文件读入一个字符串 byte[] bytes = S…
今天做项目,碰上这个问题: hibernate的save方法成功执行,但是未插入到数据库. Dao层代码: @Override public void save(T t) { this.getSession().save(t); } Service层的代码: @Override public void save(T t) { // TODO Auto-generated method stub dao.save(t); } 原因:未给操作添加事务. 解决方法: 给service层加上事务的注解就…
先把数据库中的数据都导入到Excel表格中,把图片地址的路径全部转成绝对路径. 使用Npoi读取刚导出的Excle表格,把图片那个单元格的图片路径读出来,然后用文件流读取图片,然后通过Npoi把图片放到当前单元格中. //add picture data to this workbook. byte[] bytes = System.IO.File.ReadAllBytes(@"D:\MyProject\NPOIDemo\ShapeImage\image1.jpg"); int pic…
static void Main(string[] args) { //说明:插入图片 //1.创建EXCEL中的Workbook IWorkbook myworkbook = new HSSFWorkbook(); //2.创建Workbook中的Sheet ISheet mysheet = myworkbook.CreateSheet("sheet1"); //第一步:读取图片到byte数组 HttpWebRequest request = (HttpWebRequest)WebR…
      做Web开发免不了要与Excel打交道.今天老大给我一个任务-导出Excel.开始想的还是蛮简单的,无非就是查找,构建Excel,response下载即可.但是有一点不同,就是要加入图片,就是这个加入图片搞了好久.同时网络上确实没有发现比较好的资料,所以写这篇博文记录之,供自己和博友们查询,参考.       在POI中有HSSFPatriarch对象,该对象为画图的顶级管理器,它的createPicture(anchor, pictureIndex)方法就能够在Excel插入一张图…
主要运用表类型 Create table BulkTestTable( Id nvarchar(), UserName nvarchar(), Pwd nvarchar() ) Go CREATE TYPE BulkUdt AS TABLE (Id nvarchar(), UserName nvarchar(), Pwd nvarchar() ) C#端读取Excel /// <summary> /// 读取Excel中数据 /// </summary> /// <param…
要求:读取excel中的图片,保存到指定路径 思路:  利用NPOI中 GetAllPictures()方法获取图片信息 步骤: 1.新建一个Windows窗体应用程序 2.桌面新建一个excel,贴入两张图片 如下图: 3.在Form中拖入一个button 4.点击button,在点击事件方法中写入,要读取图片的方法:ExcelToImage 点击事件方法如下: private string exclePath = @"C:\users\lenovo\Desktop\testPic.xls&q…
源数据如图: 宏操作: 生成数据后: 关键操作:在excel中启用开发工具,添加宏,然后添加模块即可,编辑完代码后,自定义功能按钮即可. Sub MakeDataSource() Dim isExistDestinationSheet isExistDestinationSheet = False Dim i For i = 1 To Sheets.Count If Sheets(i).Name = "b" Then isExistDestinationSheet = True End…
之前也使用过NPOI导出excel,这次是因为在导出的excel里新增了几个列,正好超出了255的限制,所以又要改了. 今天主要出了4个问题: 1. Invalid column index (256). Allowable column range for BIFF8 is (0..255) or ('A'..'IV') 2.c# npoi  XSSFWorkbook无法访问已关闭的流. 3.由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值. 4.错误提示: Excel在“春…
一.POI简介 Jakarta POI 是apache的子项目,目标是处理ole2对象.它提供了一组操纵Windows文档的Java API 目前比较成熟的是HSSF接口,处理MS Excel(97-2002)对象.它不象我们仅仅是用csv生成的没有格式的可以由Excel转换的东西,而是真正的Excel对象,你可以控制一些属性如sheet,cell等等. 二.HSSF概况 HSSF 是Horrible SpreadSheet Format的缩写,也即“讨厌的电子表格格式”. 也许HSSF的名字有…
1.前言 相信大家在工作中经常要遇到一些导入导出Execl操作.学习贵在分享,分享使人快乐,园子里的前辈已经有很多好的文章,鄙人也是能力有限,在这里把这些好的文章总结,方便以后再工作中使用. NPOI:是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. NPOI是构建在POI 3.x版本之上的,它可以在没有安装Office的情况下对Word/Excel文档进行读写操作. 它不使用Office COM组件(Microsoft.Off…
常用NPOI导出数据到excel,但没有试过如何导出图片.NPOI最大的特点就是不依赖于Excel组件,服务端不需要安装Excel.在单元格中插入图片主要是用HSSFClientAnchor对象.他有8个参数. HSSFClientAnchor anchor = new HSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, col2, row2); 前面四个表示在单元格中两个点的位置,后面四个表示是哪个单元格.先看代码. public FileResu…
  在我的一个项目中,需要分析客户提供的Excel, 读出其中的图片信息(显示在Excel的第几行,第几列,以及图片本身). 网络上有许多使用Open Xml插入图片到Word,Excel的文章, 但是却没有读取分析其中图片的.经过多次分析及试验,终于达成了这个目标,本文将简要描述如何读取Excel中的图片. 下图所示为一个包含图片的Excel文件的范例, 在这个Excel中,第4列,第10列都插入了图片. 我们把这个excel(.xlsx)文件另存为.zip文件,并解压,得到下图的目录结构,从…
我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要将word表格中的数据导入到Excel中.相信大家也碰到过同样的问题,下面我就给大家分享一下在C#中如何使用免费控件来实现这一功能.这里,我使用了两个免费API, DocX和Spire.Xls. 有需要的朋友可以下载使用.下载地址: DocX:codeplex官网 Spire.Xls: E-iceb…
关于这个问题,制作数据地图的方法已不新奇,总体来说有这么几类方案: 一类方案:直接在excel里制作 优势:个人小数据量应用较为方便简单 缺点:需要熟悉VBA,且更强大的功能对VBA水平要求较高 1.绘制地图图形 + VBA宏语言 思路:用插入图形"任意多边形"绘制地图:每一个"任意多边形"赋予正确名称:对"任意多边形"赋值:利用VBA对"任意多边形"的值进行操作, 例如上色. 先准备一张所需要的地图图片,网上都有,可以下载…
一.背景 在之前做的小项目里有一需求是:要求将一活动录入的数据进行统计,并以excel表格形式导出来,并且对表格格式要求并不高. 二.问题分析 鉴于用户只要求最终将数据库中的数据导出excel,对于格式要求不高,因此只需要在页面上加入一条链接,后台action中读取数据然后通过第三方组件导出,再下载,就能满足这个简单的需求了.首先上bing找了有关数据导出的组件,NPOI是弹出的次数最多的一项,在这里也要说到以前做winform窗体开发用到过水晶报表的方法,其实实现方法比较多,由于以前没接触过N…
在Excel中插入饼图时有时会遇到这种情况,饼图中的一些数值具有较小的百分比,将其放到同一个饼图中难以看清这些数据,这时使用复合条饼图就可以提高小百分比的可读性. 文中的复合饼图只是方便以后记忆,故不详,详细了解的,请自行百度…
一.状况描述    当我们需要后台更新大量数据的时候,可以使用该功能.二.解決方案    (1)新建一个Excel文件,并另存为启用宏的Excel工作簿,扩展名为.xlsm.    (2)在Excel中添加按钮.点击开发工具选项卡->插入控件->选择表单控件中的"按钮",添加按钮.如果没有开发工具选项卡,则按下图步骤添加.     (3)给按钮指定宏,并新建或录制宏(可以自己编写语句实现想要实现的功能). Sub 按钮1_Click() Dim cn As New ADOD…
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubuntu自带.使用前请使用下面的命令确保是2.7.x版本: python --version xlrd : 这是一个扩Python包,可以使用pip包管理工具安装:pip install xlrd MySQLdb 为MySQL 的Python驱动接口包,可以到http://sourceforge.net/…
大家都知道现在上下班实行打卡制,制作考勤的人员需要对你上下班的时间,计算出上下班的状态,比如:迟到.早退.加班.正常等.下面为您介绍一个“帮手”.     1.打开Excel文档.如下图       2.将鼠标定位在你要输入函数的单元格F2中,然后选择菜单栏里的“公式”,在常用菜单栏里选择“插入函数”.如下图 3.然后弹出插入函数对话框,再选函数中找到“IF”函数,这时可以看到下面对其函数的具体介绍,再点击“确定”.如下图 4.这时我们对函数参数进行设置(这时IF函数中要套用“TIME”函数),…
计算机中,无非是数据和数据的处理这两件事.Excel的工作表能存储大量数据,除了这些原始数据,我们还要用函数来处理这些数据,比如求和求积,求平均值,排序等等,并把处理结果也存在单元格里.在Excel中,我们通常不给这些数据起个专门的名字,比如StudentName1,StudentName2,Score1,Score2(我在另外一篇文章讲如何给单元格或范围内的数据命名),Excel本身已经隐含了指代这些变量的方式,不会让它们成为"失落的存储空间".一般我们在编程时,向函数传递的是我们程…
.net数据导出excel数据有多种方法,最常用的就是使用office组件,但随之而来的问题也很棘手,又要调权限又要确定是否安装office很是麻烦,最近一个项目中也有数据导出功能,随使用excel模板完美完成功能,调试完成发布服务器,又是一通调试,最终可以导出.但是项目中不只一处要数据导出,有四个同事来做这就带来很多麻烦,大家每人都创建了很多模板(当然很多功能属同一模块的都放在一个模板中创建了若干sheet),以后维护很麻烦.于是网上搜索到了npoi,研究了一会尝试使用npoi导出数据. 首先…
上篇文章将Excel中数据导入数据库时,将从Excel读入的数据均转换成了数据库相应字段的类型,其实这是没有必要的,因为对于数据库各种类型的插入,均可以字符串格式插入.比如表WQ_SWMSAR_A字段定义如下: 其中RESULTID为自增长字段. 可利用以下语句插入: insert into [WaterQuality2].[dbo].[WQ_SWMSAR_A] (STCD,ASOT,ASDR,WQG,MESPEST) values(','chenyuming') 插入结果如下: 所以对于Dat…
在上篇文章中介绍到将Excel中数据导入到数据库中,但上篇文章例子只出现了nvachar类型,且数据量很小.今天碰到将Excel中数据导入数据库中的Excel有6419行,其中每行均有48个字段,有int.vachar.datetime.numeric类型,部分字段定义如下: 可见除了STCD.SPT不允许为null值外,其它字段均允许为null值.在sqlserver数据库中某字段为null值,字符串可直接插入null值,比如如下sql语句成立: insert into WQ_PAS_A(IT…
这个demo是有一个Excel中的数据,我需要读取其中的数据然后导入到关系型数据库中,但是为了向数据库中插入更多的数据,循环N次Excel中的结果. 关于JDBC的批处理还可以参考我总结的如下博文: http://www.cnblogs.com/DreamDrive/p/5757693.html 此外用到了读取Excel文件的jxl.jar包 下载地址:http://files.cnblogs.com/files/DreamDrive/jxl.rar 附代码: import java.io.Fi…
根据网上例子结合自己的工具环境修改后测试可以通过 我使用的工具:Microsoft Visual Studio 2010,Excel 2007 一.在D盘新建一个temp文件夹用于存放Excel启动时写入标志,关闭时删除标志,vb.net程序会去查询该标志来知道Excel是否被人为打开或关闭了. 避免和程序的控制脱节. 二.在D盘根目录创建一个Excel,按Alt+F11打开代码编辑窗口,插入一个模块,填入如下代码: Sub auto_open() 'Excel启动时会自动运行这个宏Open "…
在 Excel 中,有时会需要创建外部链接来引用其他工作簿的单元格内容,但是如果想要找出所有链接并且还要将这些外部数据链接列在一个工作簿当中是有点难度的.下面我会介绍一些快捷方法,不仅能够快速帮你找出这些链接,还能将链接在一个工作簿当中列出. 利用查找功能查找并列出所有链接 由于外部链接包含中括号 [ ,所以找到所有带有中括号的单元格就能够找到所有外部链接. 步骤1:点击开始 >> 查找和选择来打开查找和替换对话框.也可以按 Ctrl + F 键来打开查找和替换对话框. 步骤2:在查找内容当中…
前台datagrid数据绑定 #region 导出到excel中    /// <summary>    /// 2014-6-6    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param> protected void lnkbtnExcel_Click(object sender…
Excel中的函数无疑是强大的,但是再强大的战士也有他脆弱的脚后跟[1].这两天在使用Excel的时候遇到了一个需求,要在某一个单元格里面自动计算今天是星期几(如显示 Today is Tuesday).本来以为Excel会有相应的函数,但是找来找去也没有找到,只有WEEKDAY可以返回今天是本周的第几天,是个数字.于是写下了一个奇怪的公式 ="Today is "& WEEKDAY(TODAY(),2),计算结果是”Today is 2”. 这可真够2的! 遇到问题就要想办法…
NPOI以及在ASP.NET MVC中的使用 1.前言 相信大家在工作中经常要遇到一些导入导出Execl操作.学习贵在分享,分享使人快乐,园子里的前辈已经有很多好的文章,鄙人也是能力有限,在这里把这些好的文章总结,方便以后再工作中使用. NPOI:是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. NPOI是构建在POI 3.x版本之上的,它可以在没有安装Office的情况下对Word/Excel文档进行读写操作. 它不使用Off…