在POI读取表格时候。如上图表格。在一般读取时,因为A4-A8被合并,导致在读取时,只能读取到下图数据:
而很多条记录很忽略。
下面贴出groovy下处理代码:
(0..<wb.numberOfSheets).each { sheetIndex ->
def st = wb.getSheetAt(sheetIndex)
/*
* 遍历每一行
*/
(0..st.lastRowNum).each { rowIndex->
def row = st.getRow(rowIndex)
//储存每一行数据
def values = new String[row.lastCellNum]
/*
* 遍历每一列
*/
(0..<row.lastCellNum).each { columnIndex->
def cell = row.getCell(columnIndex)
if (cell != null){
values[columnIndex] = Tools.getValue(cell)
}
}
//如果该行有值,则保留
if (values.find {it != null}){
result.add(values)
}
}
原因:
因为第一列“通 识 必 修 课”出现了跨行,所以导致了A5、A6、A7、A8为null。
导致无法读取5-8行数据。
解决办法:
只要让第一行不为null 或空即可。
贴出改进后代码,请注意加粗部分。
/*
* 遍历每一个工作表
*/
(0..<wb.numberOfSheets).each { sheetIndex ->
def st = wb.getSheetAt(sheetIndex)
/*
* 遍历每一行
*/
(0..st.lastRowNum).each { rowIndex->
def row = st.getRow(rowIndex)
//储存每一行数据
def values = new String[row.lastCellNum]
/*
* 遍历每一列
*/
(0..<row.lastCellNum).each { columnIndex->
def cell = row.getCell(columnIndex)
if (cell != null){
values[columnIndex] = Tools.MARK + Tools.getValue(cell)
}
}
//如果该行有值,则保留
if (values.find {it != Tools.MARK}){
result.add(values)
}
}
Tools.MARK 是一个特殊符号,在处理时去除就ok。
修改后运行结果如下:
可以成功读取首列出现换行的表格!
相关推荐
java读取excel 表格数据。 public static void main(String[] args) { String[][] content=POIExcelUtils.read("E:\\1.xlsx"); for(int i=0;i;i++) { if(content[i]!=null){ for(int j=0;j[i].length;j...
利用POI读取excel写入到word 利用POI读取excel写入到word 利用POI读取excel写入到word,压缩包里包含了jar包
JAVA IO操作 POI读取excel的内容
NULL 博文链接:https://yxhcquedu.iteye.com/blog/828707
通过poi读取excel表格信息,可以实现对97,2003,2007,2010等excel表格的读取
POI 删除excel列,可以设置多列,POI里怎么没有删除列的API呢
POI读取Excel
该poi提供了对Excel表格的读取,是这的学习的一个文件。
实现了JAVA 窗口,读取EXCEL文件,用poi读取EXCEL内容只是一个小例子
POI把Excel表格数据导入到数据库的小例子
解决poi读取excel2007出现内存溢出问题代码参
使用Poi读取大数据量excel的方法 支持2003和2007的版本
POI读取excel的例子
最新版poi 相关6个jar包 for java。Java读取Excel表格数据时(.xls、.xlsx 格式),需要引用的jar包 亲测as上可以读取到2010excel内容,内附读取源码
该实例集成maven开发环境,里面讲解了POI导入和导出Excel表格的基本用法
使用poi读取excel内容 所需jar包
使用poi解析excel文件,并将数据写入到数据库 项目说明 这个项目实现的功能是读取excel文件中的数据,解析并写入数据库。 读取的excel文件位于项目目录下的 excel\0805.xlsx 使用IntelliJ IDEA开发此项目 使用MYSQL...
apache poi 读取 Excel 的 jar 包 博文链接:https://wxinpeng.iteye.com/blog/231895
POI生成Excel POI读取Excel java操作Excel Servlet生成Excel web项目,包含含读取Excel与生成Excel方法
Java通过POI读取Excel遍历数据,根本word模板批量生成word文档,demo可运行,可根据需求修改