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. Python-Opencv 轮廓常用操作

    Python-Opencv 轮廓常用操作 1.颜色空间转换 使用cv2.cvtColor(input_image ,flag),flag为转换类型 常用的转换类型有: BGR和灰度图的转换使用 cv2 ...

  2. PAT 2-13. 两个有序序列的中位数(25)

    题目链接:http://www.patest.cn/contests/ds/2-13 解题思路及代码如下: /* 解题思路: 分别求出序列A 和B 的中位数,设为a 和b,求序列A 和B 的中位数过程 ...

  3. C++多线程基础教程

    目录 1 什么是C++多线程? 2 C++多线程基础知识 2.1 创建线程 2.2 互斥量使用 lock()与unlock(): lock_guard(): unique_lock: conditio ...

  4. 第4章 SparkSQL数据源

    第4章 SparkSQL数据源 4.1 通用加载/保存方法 4.1.1 手动指定选项 Spark SQL的DataFrame接口支持多种数据源的操作.一个DataFrame可以进行RDDs方式的操作, ...

  5. Ubutun重启网卡

    一.network利用root帐户# service networking restart 或者/etc/init.d/networking restart 二.ifdown/ifup# ifdown ...

  6. Magento1.9 add attribute to catalog product & assign to all attribute set general group

    $installer = $this; $attributes = array( 'region' => array( 'type' => 'int', 'input' => 'se ...

  7. COS418, Distributed System, Go Language

    本博客是MIT的分布式系统课程的课后作业Cos418的GO语言实现思路.由于时间有限,目前只实现了assignment1~2. 在common.go中设置debugEnabled = true,go ...

  8. muduo源码解析10-logstream类

    FixedBuffer和logstream class FixedBuffer:noncopyable { }: class logstream:noncopyable { }: 先说一下包含的头文件 ...

  9. muduo源码解析3-currentthread命名空间

    CurrentThread 作用: CurrentThread并不是一个类,而是一个命名空间,在mymuduo内部,目的是提供对于当前线程的管理操作. 内部变量: __thread int t_cac ...

  10. mysql中的函数总结

    mysql中常用日期时间函数 MySQL服务器中的三种时区设置: ①系统时区---保存在系统变量system_time_zone ②服务器时区---保存在全局系统变量global.time_zone ...