Java使用POI创建不同类型单元格

news2024/9/24 11:32:39

这篇文章将演示如何使用POI 展示如何创建一个包含不同类型单元格(如字符串、数字、日期、布尔值和公式)的Excel文件,并设置单元格样式,包括字体、颜色、边框和对齐方式。

代码

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;

public class ExcelExample {
  public static void main(String[] args) {
    Workbook workbook = new XSSFWorkbook();
    Sheet sheet = workbook.createSheet("Example Sheet");

    // 创建标题行并设置样式
    Row headerRow = sheet.createRow(0);
    CellStyle headerStyle = workbook.createCellStyle();
    Font headerFont = workbook.createFont();
    headerFont.setBold(true);
    headerFont.setColor(IndexedColors.WHITE.getIndex());
    headerStyle.setFont(headerFont);
    headerStyle.setFillForegroundColor(IndexedColors.BLUE.getIndex());
    headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
    headerStyle.setBorderBottom(BorderStyle.THIN);
    headerStyle.setBorderTop(BorderStyle.THIN);
    headerStyle.setBorderRight(BorderStyle.THIN);
    headerStyle.setBorderLeft(BorderStyle.THIN);
    headerStyle.setAlignment(HorizontalAlignment.CENTER);

    String[] headers = {"字符串(String)", "数字(Number)", "日期(Date)", "布尔(Boolean)", "公式(Formula)"};

    for (int i = 0; i < headers.length; i++) {
      Cell cell = headerRow.createCell(i);
      cell.setCellValue(headers[i]);
      cell.setCellStyle(headerStyle);
    }

    // 创建数据行并设置不同类型的单元格
    Row row = sheet.createRow(1);
    row.createCell(0).setCellValue("Hello, World!"); // 字符串类型
    row.createCell(1).setCellValue(12345.67);        // 数字类型
    row.createCell(2).setCellValue(new Date());      // 日期类型
    row.createCell(3).setCellValue(true);            // 布尔类型
    row.createCell(4).setCellFormula("B2*2");        // 公式类型

    // 设置日期单元格样式
    CellStyle dateCellStyle = workbook.createCellStyle();
    CreationHelper creationHelper = workbook.getCreationHelper();
    dateCellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("yyyy-mm-dd"));
    row.getCell(2).setCellStyle(dateCellStyle);

    // 自动调整列宽
    for (int i = 0; i < headers.length; i++) {
      sheet.autoSizeColumn(i);
    }

    // 写入Excel文件
    try (FileOutputStream fileOut = new FileOutputStream("example.xlsx")) {
      workbook.write(fileOut);
    } catch (IOException e) {
      e.printStackTrace();
    }

    // 关闭工作簿
    try {
      workbook.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

这个示例展示了如何使用Apache POI创建一个Excel文件,并在其中设置不同类型的单元格和样式,包括字符串、数字、日期、布尔值和公式。

效果图

image-20240731004420507

其他

GPT-4o 教程

MidJourney教程

Poe教程

Fantia教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2084377.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Leetcode5. 最长回文子串(背向指针)

问题描述&#xff1a; 给你一个字符串 s&#xff0c;找到 s 中最长的回文子串。 示例 1&#xff1a; 输入&#xff1a;s "babad" 输出&#xff1a;"bab" 解释&#xff1a;"aba" 同样是符合题意的答案。示例 2&#xff1a; 输入&#xff1a;…

医疗数字化转型数据中台架构方案(三)

为实现医疗数字化转型&#xff0c;我们将构建一个全面的数据中台架构&#xff0c;通过整合来自电子病历、影像系统、实验室数据及外部健康数据源的信息&#xff0c;应用大数据技术对数据进行统一存储、处理和分析&#xff1b;该数据中台将采用云计算和分布式架构&#xff0c;支…

MySQL:简述对事务的认识

浅谈对Spring事务的认识&#xff1a;https://xiaoer.blog.csdn.net/article/details/80849971 一、事务的特性 事务是数据库永恒不变的话题&#xff0c; ACID&#xff1a;原子性&#xff0c;一致性&#xff0c;隔离性&#xff0c;持久性。 &#xff08;1&#xff09;原子性&am…

DSLP——改变我团队的数据科学项目管理框架

到目前为止&#xff0c;它是数据科学的最佳框架。您可以将其用于您的团队或仅供您自己使用。以下是我使用它的方式。 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; 虽然软件工程实践要求问题的产生是为了适应不断变化的客户需求&#xff0c;但我们需要能…

护眼大路灯是不是智商税?全面测评书客、雷士、米家护眼大路灯

目前很多护眼大路灯存在虚标参数、夸大宣传&#xff0c;甚至一些质量低劣的产品还会对眼睛造成更严重的伤害。所以&#xff0c;究竟怎样才能买到一台真正好用的护眼大路灯呢&#xff1f;雷士护眼大路灯真的好吗&#xff1f;本次通过对书客、雷士、米家三款护眼大路灯的实测&…

ODOO17文档打印(输出)方案 -- ODOO17 document printing (output) scheme

根据使用场景不同&#xff0c;ODOO17支持以下几种文档打印(输出)方案&#xff1a; According to different usage scenarios, ODOO17 supports the following document printing (output) schemes: 1、QWEB ODOO原生打印功能&#xff08;生成PDF文档&#xff09; odoo使用的主…

JavaScript高阶 day-04

目录 一.什么是原型&#xff0c;什么是原型链&#xff1f; 二.call / apply / bind 有啥区别 三.JS四种检测数据类型的方式 四.说说继承 五.for..in和for..of和forEach的区别 六.forEach和map方法的区别 七. js高阶中数组的常用的操作方法 八.什么是严格模式 九.什么是…

深入了解Python数据可视化库——Seaborn

数据可视化在数据分析和机器学习领域中占据着重要地位,它不仅能帮助我们直观地理解数据,还能在探索数据、发现模式和趋势时提供极大的便利。Python语言中有多个优秀的可视化库,其中,Seaborn 因其简单易用且美观的图表风格而备受青睐。Seaborn是基于Matplotlib构建的高级API…

“千鼠万抗”全球快速扩张,百奥赛图即将跨过拐点实现盈利

造汽车还是为车企提供智驾技术&#xff0c;开发AI应用还是做底层大模型&#xff0c;造芯片还是研发光刻机&#xff1f;这是发生在每条产业链上关于价值链定位的故事。 产业发展离不开任一环节的玩家&#xff0c;但毋庸置疑的是&#xff0c;向价值链更高的领域突围&#xff0c;…

LLM —— 强化学习(RLHF-PPO和DPO)学习笔记

强化学习整体流程 智能体执行动作与环境进行交互&#xff0c;根据奖励R的反馈结果不断进行更新。 价值函数 奖励将会考虑两个方面的奖励&#xff0c;一个当下的奖励&#xff0c;一个是未来的奖励&#xff08;为了防止陷入局部最优解&#xff09;。 LLM强化学习 强化学习模型分…

四十四、【人工智能】【机器学习】- Kernel Ridge Regression(KRR)

系列文章目录 第一章 【机器学习】初识机器学习 第二章 【机器学习】【监督学习】- 逻辑回归算法 (Logistic Regression) 第三章 【机器学习】【监督学习】- 支持向量机 (SVM) 第四章【机器学习】【监督学习】- K-近邻算法 (K-NN) 第五章【机器学习】【监督学习】- 决策树…

【已解决】”只读方式“下的PPT可以编辑吗?

以“只读方式”打开的PPT文件&#xff0c;在编辑时会受到一些限制&#xff0c;那怎样才能正常编辑呢&#xff1f;根据PPT不同模式的“只读方式”&#xff0c;解决方法也不同&#xff0c;一起来看看吧&#xff01; 情况一&#xff1a;PPT属性设置为“只读” 当PPT文件在文件属性…

Python中排序算法之选择排序

选择排序算法是对《Python中排序算法之冒泡排序》中提到的冒泡排序算法的改进。 1 选择排序原理 选择排序是在参加排序的所有元素中找到数值最小&#xff08;或最大&#xff09;的元素&#xff0c;如果它不是左侧第一个元素&#xff0c;就使它与左侧第一个元素中的数据相互交…

CKKWWKKW-Dip-K-NH2;LTX-315;巯基化修饰溶瘤肽;CAS:1345407-05-7

【CKKWWKKW-Dip-K-NH2 简介】 CKKWWKKW-Dip-K-NH2&#xff0c;也被称为LTX-315&#xff0c;是一种具有抗癌活性的溶瘤肽。分子量为1439.79&#xff0c;分子式为C78H106N18O9。氨基酸序列为Lys-Lys-Trp-Trp-Lys-Lys-Trp-Dip-Lys-NH2。LTX-315被发现对多种癌细胞具有抑制作用&…

Git之1.5版本重要特性及用法实例(五十三)

简介&#xff1a; CSDN博客专家、《Android系统多媒体进阶实战》一书作者. 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a; 多媒体系统工程师系列…

Java 使用 POI 导出Excel,设置同一个单元格的内容显示不同的文字颜色

在使用Apache POI的库生成Excel的时候&#xff0c;如何在一个Cell中的文字中显示不同的颜色&#xff1f;下面是一个示例代码&#xff0c;演示如何在单元格中设置不同颜色的文本。 代码 // 创建工作簿和工作表 Workbook workbook new XSSFWorkbook(); Sheet sheet workbook.c…

鸿蒙OS试题(7)

46在组件中&#xff0c;经常需要使用字符串、图片等资源。HSP中的组件需要使用资源时&#xff0c;一般将其所用资源放在HSP包内&#xff0c;而非放在HSP的使用方处&#xff0c;以符合高内聚低合的原则。下面访问HSP资源错误的是 A.通过$r访问HSP中的资源。lmage($r(app.media.…

免费分享:2020年全球10m分辨率红树林(附下载方法)

Google Earth Engine (GEE) 是一个强大的云端地理信息处理平台&#xff0c;‌由Google与卡内基美隆大学和美国地质调查局共同开发。‌ 它提供了一个存取卫星图像和其他地球观测数据数据库的途径&#xff0c;‌并具备足够的运算能力来处理这些数据。‌ MSIC算法是指基于时间序列…

SCI FI SHOOTER CHARACTERS PACK VOL 1

这个包是科幻射击角色包第一卷的升级版。如果您已经拥有旧版本,您可以使用升级路径,从降价中受益,并享受升级后的版本*** 此包包含11个SCi FI角色,可随时填充您的项目: 外星步兵 外国雇佣兵 外星特种部队通灵者 外星赏金猎人 外星战争老兵 外星战士 人类太空海盗兵 海盗中…

【运维】解决Ubuntu 22.04 desktop版本打不开终端

问题 我是在Visual Box中创建的虚拟机&#xff0c;基于Ubuntu 22.04.4 desktop amd64版本。创建之后&#xff0c;在应用列表中打开terminal&#xff0c;并没有启动&#xff0c;过一会&#xff0c;程序自动退出 解决 这种一般都是语言和地区设置的不一致 比如&#xff1a;地区…