Android修行手册 - POI操作Excel常用样式(字体,背景,颜色,Style)

  • 点击跳转=>Unity3D特效百例
  • 点击跳转=>案例项目实战源码
  • 点击跳转=>游戏脚本-辅助自动化
  • 点击跳转=>Android控件全解手册
  • 点击跳转=>Scratch编程案例
  • 点击跳转=>软考全系列

👉关于作者

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎底部卡片私我,交流让学习不再孤单

在这里插入图片描述

👉实践过程

😜问题

在 Android 平台如何把 Excel 的 Style 样式玩出花来。

😜解决

private static Map<String, CellStyle> createStyles(Workbook wb) {Map<String, CellStyle> styles = new HashMap<String, CellStyle>();  // 创建一个样式映射表,用于存储单元格样式CellStyle style;  // 定义单元格样式Font titleFont = wb.createFont();  // 创建一个字体对象,用于设置标题样式titleFont.setFontHeightInPoints((short) 18);  // 设置字体高度为18点titleFont.setBoldweight(Font.BOLDWEIGHT_BOLD);  // 设置字体为粗体style = wb.createCellStyle();  // 创建一个单元格样式style.setAlignment(CellStyle.ALIGN_CENTER);  // 设置对齐方式为居中style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);  // 设置垂直对齐方式为居中style.setFont(titleFont);  // 设置字体为标题字体styles.put("title", style);  // 将标题样式放入样式映射表中Font monthFont = wb.createFont();  // 创建一个字体对象,用于设置月份样式monthFont.setFontHeightInPoints((short) 11);  // 设置字体高度为11点monthFont.setColor(IndexedColors.WHITE.getIndex());  // 设置字体颜色为白色style = wb.createCellStyle();  // 创建一个单元格样式style.setAlignment(CellStyle.ALIGN_CENTER);  // 设置对齐方式为居中style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);  // 设置垂直对齐方式为居中style.setFillForegroundColor(IndexedColors.GREY_50_PERCENT.getIndex());  // 设置填充颜色为灰色的50%style.setFillPattern(CellStyle.SOLID_FOREGROUND);  // 设置填充图案为实心填充style.setFont(monthFont);  // 设置字体为月份字体style.setWrapText(true);  // 设置文本自动换行styles.put("header", style);  // 将月份样式放入样式映射表中style = wb.createCellStyle();  // 创建一个单元格样式style.setAlignment(CellStyle.ALIGN_CENTER);  // 设置对齐方式为居中style.setWrapText(true);  // 设置文本自动换行style.setBorderRight(CellStyle.BORDER_THIN);  // 设置右边界为细线style.setRightBorderColor(IndexedColors.BLACK.getIndex());  // 设置右边界颜色为黑色style.setBorderLeft(CellStyle.BORDER_THIN);  // 设置左边界为细线style.setLeftBorderColor(IndexedColors.BLACK.getIndex());  // 设置左边界颜色为黑色style.setBorderTop(CellStyle.BORDER_THIN);  // 设置上边界为细线style.setTopBorderColor(IndexedColors.BLACK.getIndex());  // 设置上边界颜色为黑色style.setBorderBottom(CellStyle.BORDER_THIN);  // 设置下边界为细线style.setBottomBorderColor(IndexedColors.BLACK.getIndex());  // 设置下边界颜色为黑色styles.put("cell", style);  // 将单元格样式放入样式映射表中style = wb.createCellStyle();  // 创建一个单元格样式style.setAlignment(CellStyle.ALIGN_CENTER);  // 设置对齐方式为居中style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);  // 设置垂直对齐方式为居中style.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());  // 设置填充颜色为灰色的25%style.setFillPattern(CellStyle.SOLID_FOREGROUND);  // 设置填充图案为实心填充style.setDataFormat(wb.createDataFormat().getFormat("0.00"));  // 设置数据格式为两位小数styles.put("formula", style);  // 将公式样式放入样式映射表中//*********************add by germmy@20131013 start************************//普通单元格,四周有黑线style = wb.createCellStyle();  // 创建一个样式对象style.setAlignment(CellStyle.ALIGN_RIGHT);  // 设置单元格内容右对齐style.setWrapText(true);  // 设置单元格内容自动换行style.setBorderRight(CellStyle.BORDER_THIN);  // 设置单元格右边界为细实线style.setRightBorderColor(IndexedColors.BLACK.getIndex());  // 设置单元格右边界颜色为黑色style.setBorderLeft(CellStyle.BORDER_THIN);  // 设置单元格左边界为细实线style.setLeftBorderColor(IndexedColors.BLACK.getIndex());  // 设置单元格左边界颜色为黑色style.setBorderTop(CellStyle.BORDER_THIN);  // 设置单元格上边界为细实线style.setTopBorderColor(IndexedColors.BLACK.getIndex());  // 设置单元格上边界颜色为黑色style.setBorderBottom(CellStyle.BORDER_THIN);  // 设置单元格下边界为细实线style.setBottomBorderColor(IndexedColors.BLACK.getIndex());  // 设置单元格下边界颜色为黑色style.setDataFormat(wb.createDataFormat().getFormat("#,##0"));  // 设置单元格数据格式为千分位逗号分隔的货币格式styles.put("normalcell", style);  // 将该样式对象添加到样式集合中,键为"normalcell"//横向求和公式,粗体,有淡紫色背景,四周有黑色style = wb.createCellStyle();XSSFCellStyle styleTemp = ((XSSFCellStyle) style);  // 将style转换为XSSFCellStyle类型,并赋值给styleTemp变量styleTemp.setAlignment(CellStyle.ALIGN_RIGHT);  // 设置styleTemp的对齐方式为右对齐styleTemp.setVerticalAlignment(CellStyle.VERTICAL_CENTER);  // 设置styleTemp的垂直对齐方式为居中对齐Font formulaFont = wb.createFont();  // 创建一个新的字体对象formulaFontformulaFont.setFontName("宋体");  // 设置formulaFont的字体名为宋体formulaFont.setFontHeightInPoints((short) 11);  // 设置formulaFont的字体大小为11磅formulaFont.setBoldweight(Font.BOLDWEIGHT_BOLD);  // 设置formulaFont的粗体样式为加粗styleTemp.setFont(formulaFont);  // 设置styleTemp的字体为formulaFont//控制颜色styleTemp.setFillForegroundColor(new XSSFColor(new byte[]{(byte) 255, (byte) 0, (byte) 0, (byte) 255}));
//      style.setFillForegroundColor(IndexedColors.LIGHT_TURQUOISE.getIndex());styleTemp.setFillPattern(CellStyle.SOLID_FOREGROUND); // 设置填充图案为实心填充styleTemp.setBorderRight(CellStyle.BORDER_THIN); // 设置右边界为细边框,颜色为黑色styleTemp.setRightBorderColor(IndexedColors.BLACK.getIndex());styleTemp.setBorderLeft(CellStyle.BORDER_THIN); // 设置左边界为细边框,颜色为黑色styleTemp.setLeftBorderColor(IndexedColors.BLACK.getIndex());styleTemp.setBorderTop(CellStyle.BORDER_THIN); // 设置上边界为细边框,颜色为黑色styleTemp.setTopBorderColor(IndexedColors.BLACK.getIndex());styleTemp.setBorderBottom(CellStyle.BORDER_THIN); // 设置下边界为细边框,颜色为黑色styleTemp.setBottomBorderColor(IndexedColors.BLACK.getIndex());// 设置数据格式为千分位格式styleTemp.setDataFormat(wb.createDataFormat().getFormat("#,##0"));styles.put("formula_h", styleTemp);//横向的公式颜色style = wb.createCellStyle(); //纵向求和公式,四周有黑线style.setAlignment(CellStyle.ALIGN_RIGHT); // 设置单元格样式水平对齐方式为右对齐style.setVerticalAlignment(CellStyle.VERTICAL_CENTER); // 设置单元格样式垂直对齐方式为居中对齐style.setBorderRight(CellStyle.BORDER_THIN); // 设置单元格右边界为细实线,颜色为黑色style.setRightBorderColor(IndexedColors.BLACK.getIndex());style.setBorderLeft(CellStyle.BORDER_THIN); // 设置单元格左边界为细实线,颜色为黑色style.setLeftBorderColor(IndexedColors.BLACK.getIndex());style.setBorderTop(CellStyle.BORDER_THIN); // 设置单元格顶部边界为细实线,颜色为黑色style.setTopBorderColor(IndexedColors.BLACK.getIndex());style.setBorderBottom(CellStyle.BORDER_THIN); // 设置单元格底部边界为细实线,颜色为黑色style.setBottomBorderColor(IndexedColors.BLACK.getIndex());style.setDataFormat(wb.createDataFormat().getFormat("#,##0")); // 设置单元格数据格式为千分位格式styles.put("formula_v", style);//纵向的公式颜色style = wb.createCellStyle();  // 创建一个样式对象style.setAlignment(CellStyle.ALIGN_CENTER);  // 设置文本对齐方式为居中style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);  // 设置垂直对齐方式为居中style.setFillForegroundColor(IndexedColors.GREY_40_PERCENT.getIndex());  // 设置填充颜色为灰色(40%)style.setFillPattern(CellStyle.SOLID_FOREGROUND);  // 设置填充模式为实心填充style.setDataFormat(wb.createDataFormat().getFormat("0.00"));  // 设置数据格式为两位小数styles.put("formula_2", style);return styles;}

该函数通过调用Workbook的createFont()方法创建了一个字体对象,并设置了一些属性,比如字体的高度和粗细。然后,通过调用Workbook的createCellStyle()方法创建了一个单元格样式对象,并设置了一些属性,比如对齐方式和填充颜色。之后,将之前创建的字体对象设置为单元格样式的字体。最后,将单元格样式对象存储在一个Map中,以字符串作为键和单元格样式对象作为值。这个函数的目的是创建一些常用的单元格样式,并存储在一个Map中方便后续使用。

👉其他

📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

温馨提示点击下方卡片获取更多意想不到的资源。
空名先生

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java学习 9.Java-数组 讲解及习题

一、数组的定义与使用 1.数组的基本概念 1.1 为什么要使用数组 数组是最简单的一种数据结构 组织一组相同类型数据的集合 数据结构本身是来描述和组织数据的 数据加结构 1.2.1 数组的创建 代码实现 new int 可省略&#xff1b; char[] chars{a,b,c};//定义一个整形类型数…

VS c++多文件编译

前言&#xff1a;记录下我这个菜鸡学习的过程&#xff0c;如有错误恳请指出&#xff0c;不胜感激&#xff01; 1.简单多文件编译调试 文件目录&#xff1a; 编译&#xff1a; -g选项是告诉编译器生成调试信息&#xff0c;这样可以在程序崩溃或出现错误时更容易地进行调试。这…

MCSM面板搭建教程和我的世界Paper服务器开服教程

雨云游戏云VPS服务器用Linux搭建MCSM面板和Minecraft Paper1.20.2服务器教程。 本教程演示安装的MC服是Paper 1.20.2版&#xff0c;其他版本也可以参考本教程&#xff0c;差别不大。 本教程使用Docker来运行mc服&#xff0c;可以方便切换不同Java版本&#xff0c;方便安装多个…

STM32——NVIC中断优先级管理分析

文章目录 前言一、中断如何响应&#xff1f;NVIC如何分配优先级&#xff1f;二、NVIC中断优先级管理详解三、问题汇总 前言 个人认为本篇文章是我作总结的最好的一篇&#xff0c;用自己的话总结出来清晰易懂&#xff0c;给小白看也能一眼明了&#xff0c;这就是写博客的意义吧…

思维模型 多看效应

本系列文章 主要是 分享 思维模型&#xff0c;涉及各个领域&#xff0c;重在提升认知。越熟悉&#xff0c;越喜欢。 1 多看效应的应用 1.1 多看效应在广告和营销领域的应用 1 可口可乐之歌 可口可乐公司在 20 世纪 60 年代推出了“可口可乐之歌”广告&#xff0c;这个广告通…

PyTorch技术和深度学习——三、深度学习快速入门

文章目录 1.线性回归1&#xff09;介绍2&#xff09;加载自由泳冠军数据集3&#xff09;从0开始实现线性回归模型4&#xff09;使用自动求导训练线性回归模型5&#xff09;使用优化器训练线性回归模型 2.使用torch.nn模块构建线性回归模型1&#xff09;使用torch.nn.Linear训练…

PyCharm+Miniconda3安装配置教程

PyCharm是Python著名的Python集成开发环境&#xff08;IDE&#xff09; conda有Miniconda和Anaconda&#xff0c;前者应该是类似最小化版本&#xff0c;后者可能是功能更为强大的版本&#xff0c;我们这里安装Miniconda 按官方文档的说法conda相当于pip与virtualenv的结合&am…

R系组播调优方案

修改/etc/sysctl.conf添加如下内容&#xff1a; Vim /etc/sysctl.con net.ipv4.ip_forward1 net.ipv4.ip_nonlocal_bind1 net.ipv4.conf.all.rp_filter0 net.ipv4.conf.default.rp_filter0 net.bridge.bridge-nf-call-arptables 0 net.bridge.bridge-nf-call-ip6tables 0 …

【数据结构】树与二叉树(十):二叉树的先序遍历(非递归算法NPO)

文章目录 5.2.1 二叉树二叉树性质引理5.1&#xff1a;二叉树中层数为i的结点至多有 2 i 2^i 2i个&#xff0c;其中 i ≥ 0 i \geq 0 i≥0。引理5.2&#xff1a;高度为k的二叉树中至多有 2 k 1 − 1 2^{k1}-1 2k1−1个结点&#xff0c;其中 k ≥ 0 k \geq 0 k≥0。引理5.3&…

Python实战:绘制直方图的示例代码,数据可视化获取样本分布特征

文章目录 一、初步二、参数三、绘图类型四、多组数据直方图对比Python技术资源分享1、Python所有方向的学习路线2、学习软件3、精品书籍4、入门学习视频5、实战案例6、清华编程大佬出品《漫画看学Python》7、Python副业兼职与全职路线 一、初步 对于大量样本来说&#xff0c;如…

2023年【危险化学品经营单位主要负责人】免费试题及危险化学品经营单位主要负责人证考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年危险化学品经营单位主要负责人免费试题为正在备考危险化学品经营单位主要负责人操作证的学员准备的理论考试专题&#xff0c;每个月更新的危险化学品经营单位主要负责人证考试祝您顺利通过危险化学品经营单位主…

前端开发学习指南

前端是一个看似入门门槛不高&#xff0c;但要学好很难的领域。前端的知识体系庞杂又松散&#xff0c;技术演进快&#xff0c;如果摸不清脉络的话很容易陷入盲人摸象的困境甚至跑偏。 其实只要掌握了正确的方法&#xff0c;学习前端和学好前端就只是个时间问题&#xff0c;希望下…

OpenCV图像坐标系

绘制代码: X轴 # 选取两个点 point1 = (20, 0) point2 = (200, 0)# 在图像上绘制连接线 cv2.line(img, point1, point2, (

解决找不到x3daudio1_7.dll的方法,快速解决x3daudio1_7.dll丢失问题

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“找不到x3daudio1_7.dll”。这个问题可能是由于多种原因引起的&#xff0c;例如文件丢失、损坏或被病毒感染等。下面将详细介绍如何解决这个问题。 首先&#xff0c;我们需要了解x3daudio1_…

Kotlin HashMap entries.filter过滤forEach

Kotlin HashMap entries.filter过滤forEach fun main(args: Array<String>) {val hashMap HashMap<String, Int>()hashMap["a"] 1hashMap["b"] 2hashMap["c"] 3println(hashMap)hashMap.entries.filter {println("filter $…

2023年【北京市安全员-C3证】考试题库及北京市安全员-C3证在线考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 北京市安全员-C3证考试题库是安全生产模拟考试一点通总题库中生成的一套北京市安全员-C3证在线考试&#xff0c;安全生产模拟考试一点通上北京市安全员-C3证作业手机同步练习。2023年【北京市安全员-C3证】考试题库及…

Nignx及负载均衡动静分离

目录 一.Nginx负载均衡 1.1.下载 1.2.安装 1.3.负载均衡 二.前端部署 2.1. 准备工作 2.2.部署 好啦今天就到这里了哦&#xff01;&#xff01;&#xff01;希望能帮到你哦&#xff01;&#xff01;&#xff01; 一.Nginx负载均衡 1.1.下载 输入命令 : cd javaCloudJun/…

键盘win键无法使用,win+r不生效、win键没反应、Windows键失灵解决方案(亲测可以解决)

最近几天发现自己笔记本的win键无法使用&#xff0c;win失灵了&#xff0c;但是外接键盘后则正常:。 这个问题困扰了我一周&#xff0c;我都以为自己的枪神坏了。 寻找了几个解决方法&#xff0c;网上看了好多好多稀里糊涂的办法&#xff0c;都是不管用的&#xff0c;这里给大…

超简单的Linux FTP服务搭建教程

目录 前言1、检查vsftp是否已安装2、安装vsftpd3、启动ftp服务4、测试ftp服务5、上传文件配置总结 前言 本文记录了在Kylin Linux Desktop V10(SP1)系统上搭建FTP服务的过程。FTP是File Transfer Protocol的缩写&#xff0c;译为文件传输协议&#xff0c;是用于在网络上进行文…

向量的点积和外积

参考&#xff1a;https://www.cnblogs.com/gxcdream/p/7597865.html 一、向量的内积&#xff08;点乘&#xff09; 定义&#xff1a; 两个向量a与b的内积为 ab |a||b|cos∠(a, b)&#xff0c;特别地&#xff0c;0a a0 0&#xff1b;若a&#xff0c;b是非零向量&#xff0c;…