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();
        }
    }

运行结果

相关推荐
野生的编程萌新24 分钟前
从冒泡到快速排序:探索经典排序算法的奥秘(二)
c语言·开发语言·数据结构·c++·算法·排序算法
Full Stack Developme25 分钟前
Java后台生成多个Excel并用Zip打包下载
java·开发语言·excel
Brookty27 分钟前
【Java学习】锁、线程死锁、线程安全2
java·开发语言·学习·java-ee
weixin_307779131 小时前
VS Code配置MinGW64编译backward库
开发语言·c++·vscode·算法
百锦再1 小时前
.NET 的 WebApi 项目必要可配置项都有哪些?
java·开发语言·c#·.net·core·net
耳东哇1 小时前
spring ai-openai-vl模型应用qwen-vl\gpt-文字识别-java
java·人工智能·spring
花开富贵ii2 小时前
代码随想录算法训练营四十三天|图论part01
java·数据结构·算法·深度优先·图论
布朗克1683 小时前
Java 10 新特性及具体应用
java·开发语言·新特性·java10
ZZHow10246 小时前
JavaWeb开发_Day05
java·笔记·web
CHEN5_026 小时前
【Java虚拟机】垃圾回收机制
java·开发语言·jvm