Java 怎样从 excel 中读取文件、写入文件

简介: Java 怎样从 excel 中读取文件、写入文件

简介

众多 Java 攻城狮对 excel 读写等使用并不精通。本文通过最易理解,拿来即用原则编写。

编写地址:https://javapub.blog.csdn.net/article/details/120166106

一、读取Excel

maven 依赖

        <!--  excel -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.15</version>
        </dependency>

jar下载地址:https://download.csdn.net/download/qq_40374604/22168010

excel 文档格式

这里读取的是 .xlsx 格式文件

下载excel:https://download.csdn.net/download/qq_40374604/22202363

java 源码

package com.javapub;

import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileInputStream;

public class ExcelTest {
    private static XSSFSheet sheet;

    public static void main(String[] args) {
        ExcelTest excelTest = new ExcelTest();

        String filePath = "D:\\java\\idea_workspace\\testAll\\src\\main\\resources\\excel\\testexcel.xlsx";//路径名
        String sheetName = "Sheet1";//表名

        FileInputStream fileInputStream = null;
        try {
            fileInputStream = new FileInputStream(filePath);
            XSSFWorkbook sheets = new XSSFWorkbook(fileInputStream);
            //获取sheet
            sheet = sheets.getSheet(sheetName);
            //获取第二行第4列
            String cell2 = excelTest.getExcelDateByIndex(1, 3);
            System.out.println(cell2);
            System.out.println("----------------------------------------------");
            excelTest.readExcelData();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (fileInputStream != null) {
                try {
                    fileInputStream.close();//关闭流
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
    }

    /**
     * 根据行和列的索引获取单元格的数据
     *
     * @param row
     * @param column
     * @return
     */
    public String getExcelDateByIndex(int row, int column) {
        XSSFRow xssfRow = sheet.getRow(row);
        String cell = xssfRow.getCell(column).toString();
        return cell;
    }

    //打印excel数据
    public void readExcelData() {
        //获取行数
        int rows = sheet.getPhysicalNumberOfRows();
        for (int i = 0; i < rows; i++) {
            //获取列数
            XSSFRow row = sheet.getRow(i);
            int columns = row.getPhysicalNumberOfCells();
            for (int j = 0; j < columns; j++) {
                String cell = row.getCell(j).toString();
                System.out.println(cell);
            }
        }
    }

}

运行结果

二、写入Excel

https://blog.csdn.net/galen2016/article/details/84840793

目录
相关文章
|
17天前
|
Java BI 数据处理
如何在Java中实现Excel操作
如何在Java中实现Excel操作
|
25天前
|
IDE Java 编译器
使用Java分割PDF文件
使用Java分割PDF文件
28 1
|
13天前
|
数据格式 Python
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
49 0
|
4天前
|
JavaScript Java
Java 将Markdown文件转换为Word和PDF文档
【7月更文挑战第5天】Java中使用`Spire.Doc for Java`库可方便地将Markdown转换为Word或PDF。基本步骤包括导入模块,创建`Document`对象,加载Markdown文件,然后保存为目标格式(`.docx`或`.pdf`)。若遇到`Invalid UTF-8 stream`错误,需确保Markdown文件是UTF-8无BOM编码。页面设置可通过`PageSetup`类调整。注意,实际应用会依据具体需求和环境有所调整。
|
4天前
|
关系型数据库 MySQL Java
|
4天前
|
Java 数据安全/隐私保护
Java无模版导出Excel 0基础教程
经常写数据导出到EXCEL,没有模板的情况下使用POI技术。以此作为记录,以后方便使用。 2 工具类 样式工具: 处理工具Java接口 水印工具 导出Excel工具类 3 测试代码 与实际复杂业务不同 在此我们只做模拟 Controller Service 4 导出测试 使用Postman进行接口测试,没接触过Postman的小伙伴可以看我这篇博客Postman导出excel文件保存为文件可以看到导出很成功,包括水印 sheet页名称自适应宽度。还有一些高亮……等功能可以直接搜索使用
Java无模版导出Excel 0基础教程
|
8天前
|
存储 对象存储 Python
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
|
18天前
|
Java API 开发者
Java中的文件I/O操作详解
Java中的文件I/O操作详解
|
18天前
|
Java BI 数据处理
如何在Java中实现Excel操作
如何在Java中实现Excel操作
|
10天前
|
前端开发 JavaScript PHP
技术心得:前端点击按钮,导入excel文件,上传到后台,excel接收和更新数据
技术心得:前端点击按钮,导入excel文件,上传到后台,excel接收和更新数据
10 0