java解析excel文件处理数字成像_Java处理Excel工具,POI解析,使用InputStream读取文件...
标签:
一、需要导入的jar包
org.apache.poi
poi
3.9
org.apache.poi
poi-ooxml
3.9
二、POIAPI连接
三、代码如下
/**
* 获取上传的excel 解析数据
*
* @param file
* 文件
* @param excelName
* 文件名
* @return
* @throws IOException
* @throws InvalidFormatException
*/
@PostMapping("/readexcel")
public List uploadExcel(@RequestParam MultipartFile file, @RequestParam String excelName) throws IOException, InvalidFormatException {
List dataList = null;
try (InputStream in = file.getInputStream()) {
Workbook wb = WorkbookFactory.create(in);
// 获取第一个sheet
Sheet sheet = wb.getSheetAt(0);
// 获取最大行数
int rownum = sheet.getPhysicalNumberOfRows();
// 获取第一行
Row row = sheet.getRow(0);
// 存放表中的数据
dataList = new ArrayList();
// 循环行
for (int i = 1; i < rownum; i++) {
WorkstationExcel we = new WorkstationExcel();
row = sheet.getRow(i);
if (row != null) {
we.name = getCellFormatValue(row.getCell(0));
we.ip = getCellFormatValue(row.getCell(1));
we.description = getCellFormatValue(row.getCell(2));
} else {
continue;
}
System.err.println("名称:" + we.name + "------" + "IP:" + we.ip + "------" + "描述:" + we.description);
dataList.add(we);
}
}
return dataList;
}
public String getCellFormatValue(Cell cell) {
String cellValue = "";
if (cell == null) {
return cellValue;
}
// 判断cell类型 getCellType()
switch (cell.getCellType()) {
case Cell.CELL_TYPE_NUMERIC: {
// 获取单元格的值作为数字 getNumericCellValue()
cellValue = String.valueOf((int)cell.getNumericCellValue());
break;
}
case Cell.CELL_TYPE_FORMULA: {
// 判断cell是否为日期格式
if (DateUtil.isCellDateFormatted(cell)) {
// 转换为日期格式YYYY-mm-dd
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date d = cell.getDateCellValue();
if (d != null) {
cellValue = sdf.format(d);
}
} else {
// 数字
cellValue = String.valueOf(cell.getNumericCellValue());
}
break;
}
case Cell.CELL_TYPE_STRING: {
cellValue = cell.getRichStringCellValue().getString();
break;
}
}
return cellValue;
}
@SuppressWarnings("unused")
private class WorkstationExcel {
/**
* 工作站名 如 001
*/
public String name;
/**
* 工作站ip
*/
public String ip;
/**
* 描述
*/
public String description;
}
四、Excel表如下
名称
IP
描述
GYG4
127.0.0.33
sfs
DFSA
127.0.46.3
fsd
ADAS
172.26.6.15
dfd
WSFS
153.6.5.23
dgs
五、获取数据结果
标签:
来源: https://blog.csdn.net/yellow757/article/details/82712855
java解析excel文件处理数字成像_Java处理Excel工具,POI解析,使用InputStream读取文件...相关推荐
- pandas使用read_csv函数读取文件时指定数据列的数据类型、pandas使用read_csv函数读取文件时通过keep_default_na参数设置缺失值替换为空字符串
pandas使用read_csv函数读取文件时指定数据列的数据类型.pandas使用read_csv函数读取文件时通过keep_default_na参数设置缺失值替换为空字符串 目录
- java csv文件tozip后损坏_java上传并下载以及解压zip文件有时会报文件被损坏错误分析以及解决...
情景描述: 1.将本地数据备份成zip文件: 2.将备份的zip文件通过sftp上传到文件服务器: 3.将文件服务器上的zip文件下载到运行服务器: 4.将下载的zip文件解压到本地(文件大小超过50 ...
- java读取绝对路径文件_Java 程序中使用相对和绝对路径读取文件
在Java中用File对象来创建文件时,绝对路径一般是不会出现什么问题的,如果使用相对路径,则有可能出现意向不到的问题,以下主要是针对相对路径进行解释 1.Eclipse下的Java Project环 ...
- java怎么上传文件到web服务器_Java客户端通过Http发送POST请求上传文件到web服务器...
http://www.cnblogs.com/WilliamJiang/archive/2012/04/29/2475883.html 1.朋友的一个需求,让我给他实现,需求是这样的,需要用ASP.n ...
- php 读取文件的所有图片格式,扣丁学堂PHP培训简述PHP如何读取文件夹下所有图片、文件-php文件...
本篇文章扣丁学堂PHP培训小编给读者们分享一下PHP读取文件夹下所有图片.文件的实例,文中有代码列出供小伙伴们参考,希望对小伙伴们有帮助. 如下所示:$hostdir=dirname(__FILE__ ...
- linux将txt文件转化为raw,如何利用qemu-img工具将其它格式的镜像文件转换成VHD或RAW格式...
本文在介绍的基础上如何利用qemu-img工具将其它格式的镜像文件转换成VHD或RAW格式,重点探讨了其具体步骤. 转换镜像格式 ECS只支持导入RAW.VHD和qcow2格式的镜像文件.其他镜像文件 ...
- java excel批量导入数据库数据_Java实现Excel数据批量导入数据库
Java实现Excel数据批量导入数据库 概述: 这个小工具类是工作中的一个小插曲哦,因为提数的时候需要跨数据库导数... 有的是需要从oracle导入mysql ,有的是从mysql导入oracle ...
- java excel 删除单元格格式_Java 去除excel表格内容中的空格
读取excel数据 package cn.edu.cust.demo; import java.io.File; import java.io.FileInputStream; import java ...
- java导入导出有版本兼容问题_java导入excel时遇到的版本问题
java中读取excel文件时对不同的版本提供了不同的读取方法,这就要求我们在读取excel文件时获取excel文件的版本信息从而通过不同的版本去使用不同的读取方式, 在WorkbookFactory ...
最新文章
- 「2019嵌入式智能国际大会」 399元超值学生票来啦,帮你豪省2600元!
- SQL Server中查看SQL句子执行所用的时间
- 一个参数一个Excel表,让你玩转Pandas中read_excel()表格读取!
- ElasticSearch—基本概念
- php开发工具 debug,php开发性能调试工具xdebug
- unity 地图编辑器_基于Unity的场景基础测试
- 春节回来,陪你去看星河云!
- [裴礼文数学分析中的典型问题与方法习题参考解答]5.1.24
- 如何查看excel中的vba代码
- grads 相关系数_GrADS实习报告6
- ADS1115--已调通(附源码)
- Xftp的下载、安装、使用
- Win10安全证书过期怎么办
- 前序+中序 =〉后序
- 实现Linux与windows文件互传
- 函数型数据主成分分析(FPCA)
- 什么是数据挖掘?数据挖掘的目标是什么?
- 什么是群体智能(集群智能)?蜂群思维?
- 矛盾方程的最小二乘解
- 基于FPGA的键盘扫描程序的设计
热门文章
- mysql主从注意事项_mysql主从复制亲测,以及注意事项
- mysql5.6忘记立马_MySQL 5.7 安装完成后,立即要调整的性能选项
- 实现贝叶斯分类器_从头开始在Python中实现高斯朴素贝叶斯
- 27日直播预告丨Oracle运营商行业生产实践分享
- 典型案例:Bug 9776608-多个用户使用错误密码登录同一个用户而造成的用户无法登录异常...
- 诊断案例:Failed parse elapsed time引发db time过高的案例
- 内核解密 | Oracle 18c 数据库安装ORA-12754的两种解决方案
- MySQL 传统复制中常见故障处理和结构优化案例分析
- 全网呕血整理:关于YOLO v3原理分析
- 【API进阶之路】做OCR文字识别,谁说必须要有AI工程师?