java 解析excel

在Java中解析Excel文件,可以使用Apache POI库。以下是一个简单的例子,展示如何使用Apache POI读取一个Excel文件(假设为.xlsx格式)的内容。

首先,确保你的项目中包含了Apache POI的依赖。如果你使用Maven,可以添加以下依赖到你的pom.xml文件中:

复制代码
<dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>

以下是一个简单的Java程序,用于读取Excel文件中的数据:

复制代码
@Override
    public void UploadFile(MultipartFile multipartFile) {
        File file = null;
        try {
            file = File.createTempFile("temp", multipartFile.getOriginalFilename());
            multipartFile.transferTo(file);
            FileInputStream inputStream = new FileInputStream(file);
            Workbook workbook = new XSSFWorkbook(inputStream);
            Sheet sheet = workbook.getSheetAt(0); // 读取第一个工作表
            for (Row row : sheet) { // 迭代每一行
                log.info("开始处理"+row.getRowNum()+"行数据"); // 换行,表示一行数据结束
                for (Cell cell : row) { // 迭代每一列
                    if(row.getRowNum()>0){
                        switch (cell.getCellTypeEnum()) {
                            case STRING:
                                log.info(cell.getStringCellValue()+ "\t");
                                break;
                            case NUMERIC:
                                log.info(cell.getNumericCellValue()+ "\t");
                                break;
                            case BOOLEAN:
                                log.info(cell.getBooleanCellValue()+ "\t");
                                break;
                            case FORMULA:
                                log.info(cell.getCellFormula()+ "\t");
                                break;
                            default:
                                break;
                        }
                    }
                }
            }
            //关闭文件输入流
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

运行结果

相关推荐
穿着内裤的外星人5 分钟前
触控精灵远程读写Excel步骤配置
excel
乐世东方客5 分钟前
Nacos-2.1.0问题-自己记录
开发语言·python
呱牛do it6 分钟前
企业级门户网站设计与实现:基于SpringBoot + Vue3的全栈解决方案(Day 7)
java·vue
NE_STOP13 分钟前
Redis--SDS字符串与集合的底层实现原理
java
直奔標竿17 分钟前
Java开发者AI转型第二十二课!Spring AI 个人知识库实战(一)——架构搭建与核心契约落地
java·人工智能·后端·spring·架构
身如柳絮随风扬19 分钟前
深入理解Java IO与NIO的区别:从BIO到NIO的演进
java·nio
每天吃饭的羊34 分钟前
UMD和IIfe
开发语言·前端·javascript
A-Jie-Y42 分钟前
JAVA设计模式-抽象工厂模式
java·设计模式
gCode Teacher 格码致知1 小时前
Javascript提高:自定义的占位符替换-由Deepseek产生
开发语言·javascript·ecmascript
是个西兰花1 小时前
C++11:智能指针
开发语言·c++·智能指针·rall