使用到的jar包

xls和xlsx文件要读取的内容均在(2,2)单元格中,且均为String类型(ver3 1.1.3);

xlsm文件要读取sheet名为"システム管理"的(3,2)单元格中的内容,且为Numeric类型(version 3.1),另外"システム管理"sheet页为隐藏sheet页;

注意单元格数据类型不都是String。

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import org.apache.poi.ss.usermodel.Cell;

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 xls_xlsx_xlsm_ionew {

public static void main(String[] args) throws IOException {

String path = "D:\\8月開発案件\\01:要件定義\\01:要件定義\\04:版数チェック\\Excel\\";

String fileName = "DB一覧";

String fileType = "xlsm";

/*

String fileName = "abc";

String fileType = "xlsx";

*/

/*

String fileName = "fb";

String fileType = "xls";

*/

read(path, fileName, fileType);

}

public static void read(String path, String fileName, String fileType)

throws IOException {

InputStream stream = new FileInputStream(path + fileName + "."

+ fileType);

Workbook wb = null;

if (fileType.equals("xls")) {

wb = new HSSFWorkbook(stream);

// 读取excel中第一个sheet页的(2,2)单元格

// (列,行),从0开始

Sheet sheet = wb.getSheetAt(0);

sheet.getSheetName();

Row row = sheet.getRow(2);

Cell cell = row.getCell(2);

//ver31.1.3

System.out.print(cell.getStringCellValue());

} else if (fileType.equals("xlsx")) {

wb = new XSSFWorkbook(stream);

// 读取excel中第一个sheet页的(2,2)单元格

// (列,行),从0开始

Sheet sheet = wb.getSheetAt(0);

sheet.getSheetName();

Row row = sheet.getRow(2);

Cell cell = row.getCell(2);

//ver31.1.3

System.out.print(cell.getStringCellValue());

} else if (fileType.equals("xlsm")) {

wb = new XSSFWorkbook(stream);

int numOfSheets = wb.getNumberOfSheets();

for (int i = 0; i < numOfSheets; i++) {

Sheet sheet = wb.getSheetAt(i);

String sname = sheet.getSheetName();

if (sname.equals("システム管理")) {

Row row = sheet.getRow(3);

//获取单元格内容的方式一

//cell类型为Numeric,故采用getNumericCellValue()方法

//Cell cell = row.getCell(2);

//version3.1

//System.out.print(cell.getNumericCellValue());

//获取单元格内容的方式二

row.getCell(2).setCellType(Cell.CELL_TYPE_STRING);

//Cannot get a text value from a numeric cell,故先将cell类型设置为String型

System.out.print(row.getCell(2).getStringCellValue());

}

}

} else {

System.out.println("您输入的excel格式不正确");

}

}

}

java xlsm_poi读取excel(xls和xlsx,xlsm)给定单元格内容相关推荐

  1. html多个单元格合并单元格内容,excel怎样快速把多个单元格内容合并 合并多个单元格内容的设置方法...

    excel是我们常用的办公软件,有时我们需要把多个单元个的内容合并到一个单元格里,那么excel怎样快速把多个单元格内容合并?下面小编带来合并多个单元格内容的设置方法,希望对大家有所帮助. 合并多个单 ...

  2. 批量提取excel中包含特定关键字的单元格内容

    批量提取excel中包含特定关键字的单元格内容 链接:https://pan.baidu.com/s/1uTnkYXh8jBcaeda-JoQDuQ 提取码:jbkv class get_xls_da ...

  3. Java读取修改xlsm格式表格_Android Excel电子表格API – 在Android应用程序中读取编辑XLS CSV XLSX XLSM HTML格式...

    Android Excel Spreadsheet API 更多高级特征 具备格式化工作表,行,列,单元格等能力 Array,ArrayList 和 Recordset / Resultset数据导入 ...

  4. java poi读取excel文件(xlsx)

    读取excel文件的方法有许多种,这篇文章主要描述通过poi读取excel文件. 先maven导入jar包 <dependency><groupId>org.apache.po ...

  5. java poi对excel xls和xlsx格式文件导入导出

    一)poi简介 Apache POI项目是用于基于Microsoft的OLE 2复合文档格式开发文件格式的纯Java端口的主项目. 官网POI API地址:https://poi.apache.org ...

  6. JAVA 浏览器下载excel,自定义样式:合并单元格,设置多种背景填充颜色,冻结窗格

    添加依赖: <!-- POI --><dependency><groupId>org.apache.poi</groupId><artifactI ...

  7. PHP不读取Excel空行,phpexcel中遇到空单元格不跳过

    phpexcel中遇到空单元格不跳过 之前用phpexcel类,代码是这样写的: /* 导入excel文件 */ $fileType = PHPExcel_IOFactory::identify($d ...

  8. openxlpy 在excel中批量插入图片 根据单元格内容插入图片 图片随单元格大小变化而变化 AnchorMarker python

    需求: 根据单元格的文本内容,插入相同名称的图片: 图片大小与单元格大小相同 要用到OS库和openxlpy库 步骤: 遍历excel区域里面的单元格,看是否有文本内容 根据文本内容确定图片的名称,从 ...

  9. excel用函数合并多个单元格内容,且用分隔符隔开

    ①首先,在打开的excel表格中输入几组数据,需要合并成一个单元格,用逗号分隔. ②在c1单元格中输入合并公式:=A1&","&B1,需要在英文输入法中输入双引号. ...

  10. excel利用公式取最后一行单元格内容

    我们在数据处理中经常会涉及到去数据的前几行.后几行这样的操作.在excel中,取前几个单元格,我们可以直接写"=A1"这样的函数去取数.但是取最后一行的话,则不能写成"= ...

最新文章

  1. 讲讲Git如何合并分支(一)
  2. 新遇到的系统编译问题!已解决!
  3. Singing Superstar 字符串哈希-map操作
  4. Java面向对象概述
  5. opencv相机标定和人头姿态估计案例
  6. div 背景图 居中
  7. surface simplification using quadratic error metrics
  8. Linux下的 【pwd】 命令; 显示当前目录全路径。
  9. 2018美赛数学建模竞赛论文(隐私成本)
  10. 十三届蓝桥杯EDA省赛赛后感
  11. CF1149BThree Religions
  12. 记一次机房断电办公室网络瘫痪的恢复经过
  13. 单片机开发无线控制系列-单片机端代码实现
  14. cesium添加自定义点位图片
  15. 点击放大 swiper+photoswipe
  16. egret白鹭引擎基础介绍
  17. 计算机开机最快设置,如何让电脑启动速度变快
  18. php 屏蔽浸膏,【佳学基因】副甲状腺浸膏基因检测
  19. 知识图谱数据集下载 KnowledgeGraphDatasets
  20. 逻辑回归原理以及推导

热门文章

  1. PAT题目答案与经验总结1(持续更新,大家放心关注)
  2. 沃商店运营一周年凸显平台化优势
  3. 学习分享 | 适合初学者练习的C/C++开源项目
  4. JavaScript使用手册、范例
  5. 在家搭建 Minecraft 服务器,和远程小伙伴一起联机
  6. Windows系统下的Git安装教程
  7. TI CC2530 学习笔记-13-NewBit-CC2530-ADC-内部温度传感器
  8. linux ntp时间立即同步命令_linux时间同步,ntpd、ntpdate 【转】
  9. Git检查现有 SSH 密钥
  10. WAP技术与应用(转)