首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用POI Apache将工作表从Excel文件单元格弹出文档复制到另一文档?

使用POI Apache将工作表从Excel文件单元格弹出文档复制到另一文档的步骤如下:

  1. 导入POI Apache库:首先,需要在项目中导入POI Apache库的相关依赖。可以通过Maven或手动下载jar包的方式导入。
  2. 创建工作簿对象:使用POI Apache的Workbook类创建一个新的工作簿对象,可以通过WorkbookFactory类的create方法来创建。
  3. 获取源工作表和目标工作表:通过工作簿对象的getSheet方法获取源工作表和目标工作表。可以根据工作表的名称或索引来获取。
  4. 遍历源工作表的单元格:使用源工作表对象的getRow和getCell方法遍历源工作表的单元格。可以使用循环来遍历每一行和每一列的单元格。
  5. 复制单元格内容:通过源工作表的getCell方法获取单元格对象,然后使用单元格对象的getStringCellValue、getNumericCellValue等方法获取单元格的值。再通过目标工作表的getRow和createCell方法创建新的单元格,并将源单元格的值设置到目标单元格中。
  6. 保存目标工作簿:使用工作簿对象的write方法将目标工作簿保存到文件中。

下面是一个示例代码,演示了如何使用POI Apache将工作表从Excel文件单元格弹出文档复制到另一文档:

代码语言:txt
复制
import org.apache.poi.ss.usermodel.*;

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

public class ExcelCopyExample {
    public static void main(String[] args) {
        String sourceFilePath = "source.xlsx";
        String targetFilePath = "target.xlsx";

        try (FileInputStream fis = new FileInputStream(sourceFilePath);
             Workbook sourceWorkbook = WorkbookFactory.create(fis);
             Workbook targetWorkbook = WorkbookFactory.create(true)) {

            Sheet sourceSheet = sourceWorkbook.getSheetAt(0);
            Sheet targetSheet = targetWorkbook.createSheet();

            for (Row sourceRow : sourceSheet) {
                Row targetRow = targetSheet.createRow(sourceRow.getRowNum());

                for (Cell sourceCell : sourceRow) {
                    Cell targetCell = targetRow.createCell(sourceCell.getColumnIndex());
                    targetCell.setCellValue(getCellValue(sourceCell));
                }
            }

            try (FileOutputStream fos = new FileOutputStream(targetFilePath)) {
                targetWorkbook.write(fos);
            }

            System.out.println("Excel sheet copied successfully!");

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static String getCellValue(Cell cell) {
        String cellValue = "";

        if (cell.getCellType() == CellType.STRING) {
            cellValue = cell.getStringCellValue();
        } else if (cell.getCellType() == CellType.NUMERIC) {
            cellValue = String.valueOf(cell.getNumericCellValue());
        } else if (cell.getCellType() == CellType.BOOLEAN) {
            cellValue = String.valueOf(cell.getBooleanCellValue());
        }

        return cellValue;
    }
}

在上述示例代码中,我们首先指定源Excel文件路径和目标Excel文件路径。然后使用FileInputStream和WorkbookFactory来创建源工作簿对象和目标工作簿对象。接下来,我们通过getSheetAt方法获取源工作表和createSheet方法创建目标工作表。然后,使用嵌套的循环遍历源工作表的所有行和单元格,并将单元格的值复制到目标工作表的对应位置。最后,使用FileOutputStream和Workbook的write方法将目标工作簿保存到文件中。

请注意,这只是一个简单的示例代码,实际使用时可能需要根据具体需求进行适当的修改和扩展。同时,POI Apache还提供了更多的功能和方法,可以根据实际需求进行深入学习和使用。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(IoT):https://cloud.tencent.com/product/iot
  • 腾讯云移动开发(MPS):https://cloud.tencent.com/product/mps
  • 腾讯云区块链(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云元宇宙(Metaverse):https://cloud.tencent.com/product/metaverse

请注意,以上链接仅供参考,具体产品选择应根据实际需求和情况进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

java实现Excel导入导出功能

其中,在业务应用开发中,Excel文件的导入导出功能也非常常见,可以大大提高业务效率。在本篇文章中,我们讨论如何使用Java实现Excel导入导出功能。...一、Excel文件的读取在Java中,我们可以使用Apache POI库来读取Excel文件。...POI提供了一组Java类和方法,可以访问和处理Microsoft Office格式的文档,包括Excel文件。...例如,以下代码获取Excel文件中第一个工作的引用:javaCopy code// 获取第一个工作Sheet sheet = workbook.getSheetAt(0);获取单元格的值一旦我们获取了工作对象...以下是使用POI库来写入Excel文件的基本步骤:创建工作簿首先,我们需要创建一个工作簿对象,用于表示Excel文件

2.2K20

JAVA的POI操作Excel

1.1Excel简介 一个excel文件就是一个工作簿workbook,一个工作簿中可以创建多张工作sheet,而一个工作中包含多个单元格Cell,这些单元格都是由列(Column)行(Row)组成...行则使用数字表示,例如;A3 表示第三行第一列,E5表示第五行第五列。 ? 1.2 POI工具包 JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI 。...sheet HSSFRow Excel 行 HSSFCell Excel 单元格 利用以上几个对象,我们简单创建一个Excel工作,往里面的C1单元格写入和读出“Hello World”:...文件后缀为.xlsx 查看POI api文档,我们可以查询POI中所有这些对象的属性和方法。...XSSFRow 实现了Row接口; HSSFCell 和 XSSFCell 实现了Cell接口; 因为这两类处理对象共同实现了对应的同一接口,届时大大方便和简化了同时处理不同格式的excel文件的编码工作

1.2K20

SpringBoot图文教程9—SpringBoot 导入导出 ExcelApache Poi

那么在 SpringBoot 中如何使用 Poi 呢?本文开始将会说三种使用 Poi 的姿势:Apache Poi,EasyPoi,阿里开源的EasyExcel。 话不多说,马上开始。...集成 Poi 什么是 Poi Apache PoiApache 的一个开源项目,用Java代码通过 poi 技术可以实现 读取 和 生成 Excel 文档。...文件,在一个Excel文件中包含若干张 一张中可以分为很多行 row ,每行又分为很多单元格 cell PoiExcel 抽象出来的对象 刚才简单的说过了Excel文件相关的情况,但是那是在电脑中使用...对应关系如下: Excel中的概念 Poi对应的对象 Excel 文件 HSSFWorkbook (xls)XSSFWorkbook(xlsx) Excel工作 HSSFSheet Excel 的行...最基本的使用方式 如果需要其他更加全面的使用方式 可以关注后续文章 Easypoi 和 EasyExcel 以及 Poi中文 API 文档 「40种操作 Excel文件的姿势」 让我们再次回顾本文的学习目标

4.5K30

Java使用 POI 操作Excel

POIApache 的开源项目,由Java编写的跨平台 Java API,可操作 Microsoft Office。借助POI,可以方便的生成数据报表,数据批量上传,数据备份等工作。...2.使用API HSSF : 读写 Microsoft Excel XLS 格式文档 XSSF : 读写 Microsoft Excel OOXML XLSX 格式文档 SXSSF : 读写 Microsoft...我们知道,Excel可以分为早期的 Excel2003版本(使用POI的HSSF对象操作)和 Excel2007版本(使用POI的 XSSF操作),两者对百万数据的支持如下: HSSFWorkbook...1.百万数据报表导出 基于 XSSFWork 导出 Excel 报表,是通过所有单元格对象保存到内存中,当所有的 Excel 单元格全部创建完成之后一次性写入到 Excel 并导出。...),就可以这些对象内存中销毁,以后只要达到这个值,就会以类似的处理方式处理,直至 Excel 导出完成。

5.9K31

POI操作Excel入门案例(Spring boot)

一、简介 Apache POIApache软件基金会的免费开源的跨平台的 Java API,POI提供API给Java程序对Microsoft Office格式(Excel、WORD、PowerPoint...三、常用的方法 1、HSSFWorkbook :工作簿,代表一个excel的整个文档 HSSFWorkbook():创建一个新的工作簿 HSSFWorkbook(InputStream inputStream...):创建一个关联输入流的工作簿,可以一个excel文件封装成工作簿 HSSFSheet createSheet(String sheetname):创建一个新的Sheet HSSFSheet getSheet...四、使用案例 1、导入pom依赖 org.apache.poi poi</artifactId...文件 3、Demo2:导入EXCEL表格 本地导入EXCEL表格中的内容,并将结果封装到List集合中,为了方便阅读,这里把异常都抛出,实际情况下,应该对异常进行捕获,并进行处理; import

38710

使用POI操作Excel

首先要下载所需jar包, 官网:http://poi.apache.org ,POI支持office的所有版本 下载完后,打开“poi-bin-3.10.1-20140818”获取操作excel需要的jar...在POI包中有如下几个主要对象和excel的几个对象对应(针对03版本): HSSFWorkbook Excel 工作簿workbook HSSFSheet Excel 工作 sheet HSSFRow...Excel 行 HSSFCell Excel 单元格 POI 也能对07以后的excel版本进行读写,读写方法和读写03版是一样的,只是对象名称变了;原来各对象的开头字母H变为X,操作方式不变。...1、 Excel工作簿对应POI的XSSFWorkbook对象; 2、 Excel工作对应POI的XSSFSheet对象; 3、 Excel 的行对应POI的XSSFRow对象; 4、 Excel...在“poi-bin-3.10.1-20140818\poi-3.10.1\docs\apidocs”目录中,点击“index.html”查看POI api文档,我们可以查询POI中所有这些对象的属性和方法

93410

Apache POI使用详解

一 :简介 开发中经常会设计到excel的处理,如导出Excel,导入Excel到数据库中,操作Excel目前有两个框架,一个是apachepoi另一个是 Java Excel Apache...官方主页: http://poi.apache.org/index.html API文档: http://poi.apache.org/apidocs/index.html Java Excel...由于apache poi 在项目中用的比较多,本篇博客只讲解apache poi,不讲jxl 二:Apache POI常用的类 HSSF - 提供读写Microsoft Excel XLS格式档案的功能...); // 创建一个关联输入流的工作簿,可以一个excel文件封装成工作簿 HSSFSheet createSheet(String sheetname); 创建一个新的Sheet HSSFSheet...Excel中的工作簿、工作、行、单元格中的关系: 一个Excel文件对应于一个workbook(HSSFWorkbook), 一个workbook可以有多个sheet(HSSFSheet)组成, 一个

3.4K10

终于有一款组件可以全面超越Apache POI

如果想通过简单的代码逻辑,快速创建、加载、编辑、导入/导出大型文档Excel、Word、PDF),并将其部署到云端时,又该如何实现?...切片器 GcExcel支持带有数据透视的切片器,而Apache POI则不支持。 10. 导出CSV格式 GcExcel支持导出为CSV格式。 Apache POI没有提供内置的导出CSV选项。...但是,可以使用编程的方式创建相应的CSV / HTML文件。 11. 渐变填充 GcExcel支持渐变填充,而Apache POI不支持。 12....示例与帮助文档 使用Apache POI,许多功能需要访问和了解底层API才能实现, 但Apache POI提供的示例和文档数量十分有限,对于开发人员来说学习成本较大。...打开并保存一个20.5MB 的 Excel文件,其中包含了许多数据、公式和单元格格式,结果如下: GcExcel 用时不超过4.9S ;Apache POI 则达到10S左右 GcExcel 内存消耗为

3.3K10

【在线教育】POI入门

xls 文件读操作 3.2.5 xlsx 文件读操作 3.2.6 读取不同类型的数据 3.POI入门(了解) 3.1 POI 概述 3.1.1 简介 Apache POIApache软件基金会的开放源码函式库...功能 描述 HSSFWorkBook 提供读写Microsoft Excel格式档案的功能,xls文档 XSSFWorkBook 提供读写Microsoft Excel OOXML格式档案的功能,xlsx...excel2003 文件扩展名为 xls 名词: 工作簿:一个excel文件,就是一个工作簿 工作:一个工作簿中,可以所有多个工作Sheet 行:每一个工作,包含多行row...Workbook workbook = new HSSFWorkbook(); ​        // 在Excel工作簿中建一工作,其名为缺省值 Sheet0        //Sheet sheet...("文件生成成功");   } } 3.2.3 xlsx 文件写操作 excel2007+ 文件扩展名为 xlsx package com.zx.poi; ​ import org.apache.poi.hssf.usermodel.HSSFWorkbook

1.3K30

Java数据可视化:报表技术

poi现在一直有更新。所以现在主流使用POI。...3.1 使用jxl导出基本知识点 通过WritableWorkbook,WritableSheet,Label这三个对象我们就可以实现Excel文件的导出工作。...= workbook.createSheet(工作的名称, 工作的索引值); 3、创建单元格 添加文本类单元格 Label labelC = new Label(列索引值, 行索引值, "单元格中的内容...最终的目标就是读取每一行数据,把数据转成用户的对象,保存到中 实现的步骤:1、根据上传的文件创建Workbook ​ 2、获取到第一个sheet工作 ​ 3、第二行开始读取数据 ​ 4、读取每一个单元格...就是和jxl导出的内容一样就可以 4.3.2、基本思路 1、创建一个全新的工作薄 2、在新的工作薄中创建一个新的工作 3、在工作创建第一行作为标题行,标题固定 4、第二行循环遍历创建,有多少条用户数据就应该创建多少行

2.6K40

报表技术

poi现在一直有更新。所以现在主流使用POI。...3.1 使用jxl导出基本知识点 通过WritableWorkbook,WritableSheet,Label这三个对象我们就可以实现Excel文件的导出工作。...= workbook.createSheet(工作的名称, 工作的索引值); 3、创建单元格 添加文本类单元格 Label labelC = new Label(列索引值, 行索引值, "单元格中的内容...最终的目标就是读取每一行数据,把数据转成用户的对象,保存到中 实现的步骤:1、根据上传的文件创建Workbook ​ 2、获取到第一个sheet工作 ​ 3、第二行开始读取数据 ​ 4、读取每一个单元格...就是和jxl导出的内容一样就可以 4.3.2、基本思路 1、创建一个全新的工作薄 2、在新的工作薄中创建一个新的工作 3、在工作创建第一行作为标题行,标题固定 4、第二行循环遍历创建,有多少条用户数据就应该创建多少行

2.5K30

一小时教你轻松学会使用Java 整合 Easy Excel 操作 Excel 文件

文章目录 一、Apache POI简介 二、POI操作Excel 构建maven项目导入依赖 使用POI实现基本写操作 使用POI实现大数据量写操作 使用POI实现基本读操作 使用POI读取不同类型的数据...三、Easy Excel简介 构建maven项目导入依赖 实现写操作 实现读操作 目前市面上比较流行的操作Excel 文件工具大致有两个,一个是Apache POI另一个是阿里的Easy Excel...,但是POI比较消耗内存,Easy ExcelPOI进行了一些优化处理,所以Easy Excel使用更为简单方便,此文将带你学习掌握这两款开发利器!...Apache POI官网:https://poi.apache.org/ 基本功能: HSSF:提供读写Microsoft Excel格式文档的功能。...他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。EasyExcel基于POI进行封装优化,降低内存使用,再大的excel也不会出现内存溢出,让使用更加简单方便。

1.3K30

Java进阶-常用Excel处理库的比较

一、Apache POI1、Apache POI 介绍Apache POI 是一个极其强大的库,专为处理和生成Microsoft Office文档而设计,特别是Excel文档。...3、Apache POI 使用示例① 格式设置示例设置单元格样式,包括字体样式、背景色和边框:import org.apache.poi.ss.usermodel....下面是一个使用Apache POIExcel文件中创建图表的示例代码。此例中我们创建一个简单的柱状图,展示两组数据的对比。import org.apache.poi.ss.usermodel....多种文件格式之间的转换:支持Excel文档转换为PDF、HTML、图片等多种格式,适用于不同的展示和共享需求。...,然后读取第一个工作、第一行和第一列的单元格内容,并输出这个单元格的字符串值。

24022

如何选择最适合您的Excel处理库?

POI(Poor Obfuscation Implementation)是Apache基金会的开源项目,提供了Java语言的Excel处理功能。...如POI打开文件需要使用到Java中的File对象,需要把文件路径封装成File对象,之后POI才能打开。...GcExcel则提供了IRange接口,range(区域)指的是一个或者一片单元格,可以直接range上使用getValue方法获取数据。...此外GcExcel除了把数据保存为Excel,还支持把数据保存为CSV,把工作簿或者工作转换为PDF,或者转换为HTML以及图片等功能,可以适应更多的场景。...此外在相同的配置下,GcExcel可以打开1500万个单元格Excel,时间也只需要9.4秒,而POI则会出现问题。 用户体验 用户体验角度来看,GcExcel在易用性和文档支持方面表现出色。

16020

POI和EasyExcel-你还在为导入导出数据苦恼吗?

、打印报表、月销售情况、成绩单等等(导出数据),还有excel的信息录入到网站数据库等(导入数据),我们不可能手动操作,所以介绍ApachePOI和阿里巴巴的EasyExcel。...官网https://poi.apache.org/ xls和xlsx 首先注意下xls(2003版)和xlsx(2007版)的区别,都是excel的格式,后缀名不同。...对象说明 java是面向对象编程,那么excel的操作也是对应到具体对象的,即工作簿,工作,行和列。 ?...new XSSFWorkbook(fileInputStream); fileInputStream.close();//关闭文件流 //get第一个工作...EasyExcel ---- EasyExcel是阿里巴巴开源的excel处理框架,因为没有一次全部加载进内存,是磁盘上一行行解析,所以节省内存,同时操作十分简便,一行代码,可以根据实体类自动生成

4.2K11

Apache POI与easyExcel:Excel文件导入导出的技术深度分析

在导入Excel文件时,Apache POI会将整个文件加载到内存中,然后提供API来访问和操作文件中的各个元素,如单元格、行、列等。...1.1 POI实现读取excel 下面是一演示如何使用 Apache POI 导入(读取)和导出(写入)Excel 文件(.xlsx 格式) org.apache.poi...1.2 poi实现写入excel使用Apache POI写入.xlsx格式的Excel文件时,您需要创建一个XSSFWorkbook对象来表示整个工作簿,然后在其中创建XSSFSheet对象来表示工作...接下来,您可以在工作中创建行和单元格,并设置它们的值。最后,工作簿写入到文件系统中。...EasyExcel 是在在POI的解析引擎基础上改进的,但并没有完全重写 Apache POI 的整个解析引擎,特别是对于 XLSX 文件格式(即 Excel 2007 及以上版本所使用的格式,POI

48210
领券