java向指定的excel单元格里添加数据

package org.jeecg.modules.to.util;

import java.io.FileInputStream;
import java.io.FileOutputStream;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;

public class TextUtil{
   
   

    public static void main(String[] args) throws Exception{
   
   

        inserSheetData();
    }

    //向已知表中插入数据,累计追加
    //写入前先判断表是否存在,表中是否有数据
    private static void inserSheetData() throws Exception {
   
   

        String filePath = "C:\\Users\\oshait24\\Desktop\\Tool基本信息表.xls";
        FileInputStream fs=new FileInputStream(filePath);

        //使用POI提供的方法得到excel的信息
        POIFSFileSystem fileSystem = new POIFSFileSystem(fs);
        HSSFWorkbook hssfWorkbook = new HSSFWorkbook(fileSystem);
        //获取到工作表,因为一个excel可能有多个工作表
        HSSFSheet InsertSheet=hssfWorkbook.getSheetAt(0
### 使用 XSSFWorkbook 创建 Excel 文件并插入数据 为了使用 `XSSFWorkbook` 类在 Java 中创建 Excel 文件并向其添加数据,需先引入 Apache POI 的相应库[^1]。对于 `.xlsx` 格式的文件操作,应选用 `XSSF` 前缀的相关类。 #### 添加 Maven 依赖 如果项目基于 Maven 构建,则应在 `pom.xml` 文件中加入如下依赖: ```xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>5.2.3</version> </dependency> ``` #### 编代码实现功能需求 下面是一段完整的示例程序,展示了如何利用 `XSSFWorkbook` 来构建新的 Excel 文档,并向指定单元格内输入数值或字符串内容: ```java import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.FileOutputStream; public class CreateExcel { public static void main(String[] args) throws Exception{ // 创建一个新的工作簿对象 try (XSSFWorkbook workbook = new XSSFWorkbook()) { // 在此工作簿下新建一张名为 "Sheet1" 的表单 XSSFSheet sheet = workbook.createSheet("Sheet1"); // 定义要填充的数据数组 Object[][] bookData = { {"Head First Java", "Kathy Serria", 79}, {"Effective Java", "Joshua Bloch", 36}, {"Clean Code", "Robert Martin", 42} }; int rowCount = 0; // 遍历二维数组中的每一行记录 for (Object[] aBook : bookData) { var row = sheet.createRow(++rowCount); int columnCount = 0; // 将每条记录按列拆分存入对应的单元格里 for (Object field : aBook) { var cell = row.createCell(columnCount++); if (field instanceof String) { cell.setCellValue((String) field); } else if (field instanceof Integer) { cell.setCellValue((Integer) field); } } } // 设置输出路径并将生成的工作簿出至磁盘上 try (FileOutputStream outputStream = new FileOutputStream("JavaBooks.xlsx")) { workbook.write(outputStream); } } } } ``` 上述代码片段实现了创建工作簿、定义表格结构以及填充值的过程;最后一步则是将整个文档序列化成二进制流的形式存储于本地硬盘之中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值