单元格类型

读取Excel数据

package com.java.test.poi;

import java.io.File;
import java.io.FileInputStream; import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellValue;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class parseExcel {
// if(!wb.isSheetHidden(sheetnum)){}//判断工作表sheet是否被隐藏,隐藏返回true,未被隐藏返回false
// if(!row.getZeroHeight()){}//判断行是否隐藏,隐藏返回true
public static void mainParseExcel() {
//把所有文件种交易集合到一个list集合中
String xlsxpath = "C:/Users/Desktop/1.xlsx";
int startNum = 0;//从第几个sheet页开始解析
/*解Excel*/
Workbook wb = null; //创建工作簿对象
try{
FileInputStream fi = new FileInputStream(new File(xlsxpath));
wb = new XSSFWorkbook(fi); //操作Excel2007的版本,扩展名是.xlsx//xlsm文件也可以兼容
fi.close();//关闭输入流
} catch (Exception e){
System.out.println(e);
}
int num = wb.getNumberOfSheets();//得到sheet的个数
for(int sheetnum=startNum; sheetnum<num; sheetnum++){//行,列和sheet索引都是从0开始
if(!wb.isSheetHidden(sheetnum)){//判断工作表是否被隐藏,隐藏返回true,未被隐藏返回false
/**解sheet页*/
Sheet sheet = wb.getSheetAt(sheetnum); //获取给定索引处的Sheet对象。
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator(); //先返回XSSF和HSSF对象,再创建一个用于计算公式单元格的对象
int rowNum = sheet.getLastRowNum() + 1; //取最后一行的行号
/*双for循环遍历工作簿中单元格*/
for(int i=0; i<rowNum; i++){ //行循环
Row row = sheet.getRow(i); //行对象
int cellNum = row.getLastCellNum(); //取最后一列列号 for(int j=0; j<cellNum; j++){ //列循环
Cell cell = row.getCell(Short.parseShort(j + "")); //指定单元格
CellValue c = evaluator.evaluate(cell); //单元格值对象
if(c != null){ //判断单元格是否有值
System.out.println(c.getCellType());
System.out.println(c.getCellTypeEnum());
switch(c.getCellType()) {
case STRING:
String value = c.getStringValue(); //得到单元格值
System.out.println("String:" + value);
break;
case NUMERIC:
double dvalue = c.getNumberValue(); //得到单元格内数字
System.out.println("Double:" + dvalue);
break;
default:
System.out.println("---");
}
}
}
} }
}
} public static void main(String[] args) { mainParseExcel();
} }

poi——读取excel数据的更多相关文章

  1. 使用poi读取excel数据示例

    使用poi读取excel数据示例 分两种情况: 一种读取指定单元格的值 另一种是读取整行的值 依赖包: <dependency> <groupId>org.apache.poi ...

  2. Java POI读取Excel数据,将数据写入到Excel表格

    1.准备 首先需要导入poi相应的jar包,包括: 下载地址:http://pan.baidu.com/s/1bpoxdz5 所需要的包的所在位置包括: 2.读取Excel数据代码 package S ...

  3. POI读取Excel数据

    POI读取Excel表格数据 * {所需相关jar下载: * commons-collections4-4.4.jar * commons-compress-1.19.jar * poi-4.1.1. ...

  4. POI读取Excel数据保存到数据库,并反馈给用户处理信息(导入带模板的数据)

    今天遇到这么一个需求,将课程信息以Excel的形式导入数据库,并且课程编号再数据库中不能重复,也就是我们需要先读取Excel提取信息之后保存到数据库,并将处理的信息反馈给用户.于是想到了POI读取文件 ...

  5. java 使用POI读取excel数据

    原文:http://doc.okbase.net/0201zcr/archive/161440.html 一.定义 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Ja ...

  6. Java POI 读取Excel数据转换为XML格式

    1.首先要下载poi相关的包:http://poi.apache.org/  ,以下是所需的jar包 2.贴上详细的代码 public class ExcelToXml { /** * 将excel的 ...

  7. POI 读取Excel数据

    private List<LeagueGroup> read() throws IOException{ List<LeagueGroup> leagueGroups=new ...

  8. java的poi技术读取Excel数据到MySQL

    这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 ...

  9. jxl读写excel, poi读写excel,word, 读取Excel数据到MySQL

    这篇blog是介绍: 1. java中的poi技术读取Excel数据,然后保存到MySQL数据中. 2. jxl读写excel 你也可以在 : java的poi技术读取和导入Excel了解到写入Exc ...

随机推荐

  1. 批量将制定文件夹下的全部Excel文件导入微软SQL数据库

    以下代码将c:\cs\文件夹下的全部Excle中数据导入到SQL数据库 declare @query vARCHAR(1000) declare @max1 int declare @count1 i ...

  2. HDU 1421 搬寝室 解题报告(超详细)

    **搬寝室 Time Limit: 2000/1000 MS Memory Limit: 65536/32768 K Problem Description 搬寝室是很累的,xhd深有体会.时间追述2 ...

  3. centos7 安装高版本svn

    一.安装高版本svn 1.创建一个新的yum库文件,vim /etc/yum.repos.d/wandisco-svn.repo 内容如下 [WandiscoSVN] name=Wandisco SV ...

  4. Java——HTTP超详细总结

    HTTP协议概述 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的 ...

  5. 测试开发专题:spring-boot自定义异常返回

    上文测试开发专题:spring-boot统一异常捕获我们讨论了java异常以及如何使用Spring-Boot捕获异常,但是没有去说捕获异常后该如何进一步处理,这篇文章我们将对这个遗留的问题进行讨论. ...

  6. Linux设备模型之kobject

    阿辉原创,转载请注明出处 参考文档:LDD3-ch14.内核文档Documentation/kobject.txt,本文中使用到的代码均摘自Linux-3.4.75 ----------------- ...

  7. java-mysql类型对照

    java mysql 数据类型对照 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述             VARCHAR L+N VARCHAR java.lang. ...

  8. [hdu4911]逆序对相关

    思路:由于只能交换相邻的数,所以每次最多减小1个逆序对(且如果存在逆序对那么肯定可以减小1个)!于是乎..就是统计逆序对的裸题了.树状数组或归并都行. #pragma comment(linker, ...

  9. Linux 物理卷(PV)、逻辑卷(LV)、卷组(VG)管理

    (一)相关概念 逻辑卷是使用逻辑卷组管理(Logic Volume Manager)创建出来的设备,如果要了解逻辑卷,那么首先需要了解逻辑卷管理中的一些概念. 物理卷(Physical Volume, ...

  10. vscode调试webpack的启动和打包部署过程,nodejs调试

    launch.json ``` {   // 使用 IntelliSense 了解相关属性.    // 悬停以查看现有属性的描述.   // 欲了解更多信息,请访问: https://go.micr ...