1.工具类
public class InExcelTool { //根据指定位置单独读取一个
public static String getContent(String file, int page, int i, int j){
String s = null;
try {
//解析
org.apache.poi.ss.usermodel.Workbook workbook = null;
NumberFormat nf = NumberFormat.getInstance();
//文件后缀
String extString = file.substring(file.lastIndexOf("."));
InputStream is = new FileInputStream(file);
if(".xls".equals(extString)){
workbook = new HSSFWorkbook(is);
Sheet sheet = workbook.getSheetAt(page); //选择sheet页
HSSFRow row = (HSSFRow) sheet.getRow(i);
HSSFCell data = row.getCell(j);
s = String.valueOf(data);
if (s.lastIndexOf(".0") != -1) {
s = s.substring(0, s.indexOf("."));
} }else if(".xlsx".equals(extString)){
workbook = new XSSFWorkbook(is);
Sheet sheet = (Sheet) workbook.getSheetAt(page); //选择sheet页
XSSFRow row = (XSSFRow) sheet.getRow(i);
XSSFCell data = row.getCell(j);
s = String.valueOf(data);
}else{
return "文件格式不符!";
} }catch (Exception e){
e.printStackTrace();
}
return s;
}
} 2.调用
 @RequestMapping("UpdateSocialCircleExcel")
String UpdateSocialCircleExcel(@RequestParam("file") MultipartFile file){
try { //获取当前系统时间
Date date = new Date();
//转换为中文时间
SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy"+"年"+"MM"+"月"+"dd"+"日"+"hh"+"时"+"mm"+"分"+"ss"+"秒-");
// 获取文件的名字
String fileName = file.getOriginalFilename();
//拼接文件名
String FileSyetemTime = dateFormat.format(date)+fileName;
// 指定文件存储路径 File.separator 代表/或者\ 解决跨平台 / \ 的问题 跨平台
//指定存放位置
String destFileName = "C:" + File.separator + "Users" + File.separator+ "Public" + File.separator + "imports" + File.separator+ FileSyetemTime;
//将文件创建在本地
File pinjie = new File(destFileName); //文件的路径在文件名拼接的结果
String destFile = pinjie+"";
file.transferTo(pinjie); //创建添加
       System.out.println(InExcelTool.getContent(destFile, 0, 2, 1));
    }
}
注:以上内容仅供个人学习记录使用,如有问题,请慎用!

Java读取excel 支持xls 和 xlsx格式的更多相关文章

  1. Java 解析Excel(xls、xlsx两种格式)

    Java 解析Excel(xls.xlsx两种格式) 一.环境 JDK 1.8 二.JAR 1.commons-collections4-4.1.jar 2.poi-3.9-20121203.jar ...

  2. java解析Excel(xls、xlsx两种格式)

    https://www.cnblogs.com/hhhshct/p/7255915.html ***************************************************** ...

  3. Java读取excel(兼容03和07格式)

    读取excel,首先需要下载POI的jar,可以去官网下,也可以在这里下载 一.简单说明 excel2003和excel2007区别比较大,最直观的感受就是扩展名不一样,哈哈 不过,使用POI的API ...

  4. java 读取excel 正常 xls

    package com.sun.test; import java.io.BufferedInputStream;import java.io.File;import java.io.FileInpu ...

  5. java读取excel或者csv时日期格式数据处理

    背景:最近写一个通过excel批量导入数据的功能,里面含有时间,但是java读取之后把时间转为了距离1990年1月1号的天数,比如excel中时间为2018/9/16 18:30,java读取之后变成 ...

  6. java读取excel文件(.xls,xlsx,csv)

    前提,maven工程通过poi读写excel文件,需要在pom.xml中配置依赖关系: 在<dependencies>中添加如下代码 <dependency> <grou ...

  7. poi做Excel数据驱动,支持.xls和.xlsx格式的excel文档,比起jxl强大不少

    import java.io.FileInputStream;import java.io.InputStream;import java.util.Iterator;import java.util ...

  8. C# 将DataGridView中显示的数据导出到Excel(.xls和.xlsx格式)—NPOI

    前言 https://blog.csdn.net/IT_xiao_guang_guang/article/details/104217491  本地数据库表中有46785条数据,测试正常  初次运行程 ...

  9. Java读取excel表格

    Java读取excel表格 一般都是用poi技术去读取excel表格的,但是这个技术又是什么呢 什么是Apache POI? Apache POI是一种流行的API,它允许程序员使用Java程序创建, ...

随机推荐

  1. 【ZJOI2012】灾难 - LCA+拓扑排序

    题目描述 阿米巴是小强的好朋友. 阿米巴和小强在草原上捉蚂蚱.小强突然想,如果蚂蚱被他们捉灭绝了,那么吃蚂蚱的小鸟就会饿死,而捕食小鸟的猛禽也会跟着灭绝,从而引发一系列的生态灾难. 学过生物的阿米巴告 ...

  2. Java并发--三大性质

    一.多线程的三大性质 原子性:可见性.有序性 二.原子性 原子性介绍 原子性是指:一个操作时不可能中断的,要么全部执行成功要么全部执行失败,有着同生共死的感觉.即使在多线程一起执行的时候,一个操作一旦 ...

  3. 用终端命令行(BASH)将本地项目上传到Github并提交代码

    第一步: 在Github上创建自己的repository 第二步:建立本地仓库cd到你的本地项目根目录下,执行git命令 1:$ cd 到你的项目目录下 2:$ git init 第三步:将本地项目工 ...

  4. 【Net】StreamWriter.Write 的一点注意事项

    背景 今天在维护一个旧项目的时候,看到一个方法把string 转换为 byte[] 用的是写入内存流的,然后ToArray(),因为平常都是用System.Text.Encoding.UTF8.Get ...

  5. 第3章 Hive数据类型

    第3章 Hive数据类型 3.1 基本数据类型 对于Hive的String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储2GB ...

  6. 基于 abp vNext 微服务开发的敏捷应用构建平台 - 设计构想

    许多中小企业的管理模式都是在自身的发展过程中不断摸索,逐步建立起来的,每一家都有其独有的管理模式,而且随着企业的不断发展,管理模式也在不断变化中.企业在发展壮大的过程中离不开信息化系统的支撑,企业在构 ...

  7. c++: internal compiler error: Killed (program cc1plus)

    转自https://blog.csdn.net/qq_27148893/article/details/88936044 这是在开发板上编译opencv的时候报了一个错,主要是在编译过程中,内存不够造 ...

  8. Kafka工作流程

    Kafka生产过程分析 1 写入方式 producer采用推(push)模式将消息发布到broker,每条消息都被追加(append)到分区(patition)中,属于顺序写磁盘(顺序写磁盘效率比随机 ...

  9. 修改docker0网桥的IP段

    关闭docker进程 systemctl stop docker 修改/etc/docker/daemon.json { "bip": "100.96.2.1/24&qu ...

  10. 焦大:seo思维光年(下)seo操作如何度量化

    http://www.wocaoseo.com/thread-57-1-1.html 如果不能度量就无法进行改进,所以度量化或数据化是网站分析和网站研究必须进行的一个方面,seo也不能例外.我在上篇文 ...