利用jxl读取excel合并的单元格的一个小例子

2024-06-01 06:48

本文主要是介绍利用jxl读取excel合并的单元格的一个小例子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

工作中我们可能要把Excel文件的记录保存到数据库,

今天我用jxl读取Excel文件时遇到了合并格的问题,记录如下:

如Excel文件如下:



读取出来的记录为:



由上图可以看出,合并的单元格只有第一次输出了,这样的话,在保存数据

到数据库时就会有数据遗漏,所以做了一定的改造,代码如下:

[java]  view plain copy
在CODE上查看代码片 派生到我的代码片
  1. package temp;  
  2.   
  3. import java.io.File;  
  4. import java.io.IOException;  
  5.   
  6. import jxl.Range;  
  7. import jxl.Sheet;  
  8. import jxl.Workbook;  
  9. import jxl.read.biff.BiffException;  
  10.   
  11. public class SimpleExcelRead {  
  12.     public void readExcel(File file) throws BiffException, IOException {  
  13.         Workbook wb = Workbook.getWorkbook(file);// 从文件流中取得Excel工作区对象  
  14.         Sheet sheet = wb.getSheet(0);  
  15.   
  16.         System.out.println(file.getName());  
  17.         System.out.println("第一个sheet的名称为:" + sheet.getName());  
  18.         System.out.println("第一个sheet共有:" + sheet.getRows() + "行"  
  19.                 + sheet.getColumns() + "列");  
  20.         System.out.println("具体内容如下:");  
  21.         Range[] rangeCell = sheet.getMergedCells();  
  22.   
  23.         for (int i = 0; i < sheet.getRows(); i++) {  
  24.             for (int j = 0; j < sheet.getColumns(); j++) {  
  25.                 String str = null;  
  26.                 str = sheet.getCell(j, i).getContents();  
  27.                 for (Range r : rangeCell) {  
  28.                     if (i > r.getTopLeft().getRow()  
  29.                             && i <= r.getBottomRight().getRow()  
  30.                             && j >= r.getTopLeft().getColumn()  
  31.                             && j <= r.getBottomRight().getColumn()) {  
  32.                         str = sheet.getCell(r.getTopLeft().getColumn(),  
  33.                                 r.getTopLeft().getRow()).getContents();  
  34.                     }  
  35.                 }  
  36.                 System.out.print(str + "\t");  
  37.             }  
  38.             System.out.println();  
  39.         }  
  40.         wb.close();  
  41.     }  
  42.   
  43.     public static void main(String[] args) throws BiffException, IOException {  
  44.         SimpleExcelRead sr = new SimpleExcelRead();  
  45.         File file = new File("test.xls");  
  46.         sr.readExcel(file);  
  47.     }  
  48.   
  49. }  

输出结果如下:



这样保存数据时,就不会遗漏数据了。


这篇关于利用jxl读取excel合并的单元格的一个小例子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1020274

相关文章

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Python使用python-can实现合并BLF文件

《Python使用python-can实现合并BLF文件》python-can库是Python生态中专注于CAN总线通信与数据处理的强大工具,本文将使用python-can为BLF文件合并提供高效灵活... 目录一、python-can 库:CAN 数据处理的利器二、BLF 文件合并核心代码解析1. 基础合

Java easyExcel实现导入多sheet的Excel

《JavaeasyExcel实现导入多sheet的Excel》这篇文章主要为大家详细介绍了如何使用JavaeasyExcel实现导入多sheet的Excel,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录1.官网2.Excel样式3.代码1.官网easyExcel官网2.Excel样式3.代码

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

使用C#删除Excel表格中的重复行数据的代码详解

《使用C#删除Excel表格中的重复行数据的代码详解》重复行是指在Excel表格中完全相同的多行数据,删除这些重复行至关重要,因为它们不仅会干扰数据分析,还可能导致错误的决策和结论,所以本文给大家介绍... 目录简介使用工具C# 删除Excel工作表中的重复行语法工作原理实现代码C# 删除指定Excel单元

Python实现pdf电子发票信息提取到excel表格

《Python实现pdf电子发票信息提取到excel表格》这篇文章主要为大家详细介绍了如何使用Python实现pdf电子发票信息提取并保存到excel表格,文中的示例代码讲解详细,感兴趣的小伙伴可以跟... 目录应用场景详细代码步骤总结优化应用场景电子发票信息提取系统主要应用于以下场景:企业财务部门:需