首页 > 代码库 > 利用jxl读取excel合并的单元格的一个小例子
利用jxl读取excel合并的单元格的一个小例子
工作中我们可能要把Excel文件的记录保存到数据库,
今天我用jxl读取Excel文件时遇到了合并格的问题,记录如下:
如Excel文件如下:
读取出来的记录为:
由上图可以看出,合并的单元格只有第一次输出了,这样的话,在保存数据
到数据库时就会有数据遗漏,所以做了一定的改造,代码如下:
package temp; import java.io.File; import java.io.IOException; import jxl.Range; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; public class SimpleExcelRead { public void readExcel(File file) throws BiffException, IOException { Workbook wb = Workbook.getWorkbook(file);// 从文件流中取得Excel工作区对象 Sheet sheet = wb.getSheet(0); System.out.println(file.getName()); System.out.println("第一个sheet的名称为:" + sheet.getName()); System.out.println("第一个sheet共有:" + sheet.getRows() + "行" + sheet.getColumns() + "列"); System.out.println("具体内容如下:"); Range[] rangeCell = sheet.getMergedCells(); for (int i = 0; i < sheet.getRows(); i++) { for (int j = 0; j < sheet.getColumns(); j++) { String str = null; str = sheet.getCell(j, i).getContents(); for (Range r : rangeCell) { if (i > r.getTopLeft().getRow() && i <= r.getBottomRight().getRow() && j >= r.getTopLeft().getColumn() && j <= r.getBottomRight().getColumn()) { str = sheet.getCell(r.getTopLeft().getColumn(), r.getTopLeft().getRow()).getContents(); } } System.out.print(str + "\t"); } System.out.println(); } wb.close(); } public static void main(String[] args) throws BiffException, IOException { SimpleExcelRead sr = new SimpleExcelRead(); File file = new File("test.xls"); sr.readExcel(file); } }
输出结果如下:
这样保存数据时,就不会遗漏数据了。
利用jxl读取excel合并的单元格的一个小例子
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。