当前位置: 首页 > news >正文

Aspose.cell excel转pdf日期格式不正确yyyy/MM/dd变成MM/dd/yyyy

最近使用Aspose.cell将excel转pdf过程中excel中时间格式列的显示和excel表里的值显示不一样。
excel里日期格式 yyyy/MM/dd
pdf里日期格式MM/dd/yyyy

主要原因:linux和windows里内置的时间格式不一致,当代码部署到linux服务器的时候转换格式就会发生不一致的问题。
解决方法:使用apache poi获取aspose遍历所有的CELL判断其类型,若是日期格式则手动格式化日期格式并将单元格设置成String类型。

接下来详细讲解怎么操作。

例:这边的的B列设置了时间格式且显示是yyyy/MM/dd
在这里插入图片描述
但转成pdf过程中却格式变样了变成MM/dd/yyyy

在这里插入图片描述
在这里插入图片描述

/**对excel里所有单元格进行遍历,判断单元格类型是Numeric且是时间类型,类型==14)则进行日期格式化且将cell类型设置成String单元格为自定义类型的时候,cell.getCellStyle().getDataFormat()值:yyyy-MM-dd---->14yyyy年m月d日--->31yyyy年m月------>57m月d日  -------->58HH:mm--------->20h时mm分  ------>32*/
public void formatterAllDateCellStyle(POIUtils poiUtils) {Sheet sheet = poiUtils.getSheet();// 遍历行Row// 获取sheet中的总行数int rowTotalCount = sheet.getLastRowNum();for (int i = 0; i <= rowTotalCount; i++) {// 获取第i列的row对象Row row = sheet.getRow(i);//解决空白行问题if (row == null) {continue;}//获取总列数int columnCount = row.getLastCellNum();for (int j = 0; j < columnCount; j++) {Cell cell = row.getCell(j);//如果未null则跳过if (row.getCell(j) == null) {continue;} else {if (cell.getCellType().equals(CellType.NUMERIC)) {//日期格式short format = cell.getCellStyle().getDataFormat();if (DateUtil.isCellDateFormatted(cell)) {if (format == 14) {SimpleDateFormat sdf = null;sdf = new SimpleDateFormat("yyyy/M/d");double valueDouble = cell.getNumericCellValue();Date date = org.apache.poi.ss.usermodel.DateUtil.getJavaDate(valueDouble);String formatStr = sdf.format(date);cell.setCellType(CellType.STRING);cell.setCellValue(formatStr);}}}}}}}

相关文章:

Aspose.cell excel转pdf日期格式不正确yyyy/MM/dd变成MM/dd/yyyy

最近使用Aspose.cell将excel转pdf过程中excel中时间格式列的显示和excel表里的值显示不一样。 excel里日期格式 yyyy/MM/dd pdf里日期格式MM/dd/yyyy 主要原因&#xff1a;linux和windows里内置的时间格式不一致&#xff0c;当代码部署到linux服务器的时候转换格式就会发生不一…...

搭建golang开发环境

这里参考一篇文章&#xff1a; golang环境变量链接&#xff0c;还不错...

Django实现音乐网站 ⑴

使用Python Django框架制作一个音乐网站。 目录 网站功能模块 安装django 创建项目 创建应用 注册应用 配置数据库 设置数据库配置 设置pymysql库引用 创建数据库 创建数据表 生成表迁移文件 执行表迁移 后台管理 创建管理员账户 启动服务器 登录网站 配置时区…...

基于粒子群优化算法的分布式电源选址与定容【多目标优化】【IEEE33节点】(Matlab代码实现)

目录 &#x1f4a5;1 概述 1.1 目标函数 2.2 约束条件 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f308;4 Matlab代码实现 &#x1f4a5;1 概述 分布式电源接入配电网&#xff0c;实现就地消纳&#xff0c;可以提高新能源的利用率、提高电能质量和降低系统网损…...

打卡一个力扣题目

目录 一、问题 二、解题办法一 三、解题方法二 四、对比分析 关于 ARTS 的释义 —— 每周完成一个 ARTS&#xff1a; ● Algorithm: 每周至少做一个 LeetCode 的算法题 ● Review: 阅读并点评至少一篇英文技术文章 ● Tips: 学习至少一个技术技巧 ● Share: 分享一篇有观点…...

【SSM—SpringMVC】 问题集锦(持续更新)

目录 1.Tomcat启动&#xff0c;部署工件失败 1.Tomcat启动&#xff0c;部署工件失败 解决&#xff1a;使用SpringMVC&#xff0c;添加Web支持&#xff0c;要将项目结构进行添加WEB-INF下添加lib目录&#xff0c;将依赖添进去...

2022年全国职业院校技能大赛(高职组)“软件测试”赛项接口测试任务书

任务七 接口测试 执行接口测试 本部分按照要求&#xff0c;执行接口测试&#xff1b;使用接口测试工具PostMan&#xff0c;编写脚本、配置参数、执行接口测试并且截图&#xff0c;截图需粘贴在接口测试总结报告中。 接口测试具体要求如下&#xff1a; 题目1&#xff1a;资产…...

Docker 如何助您成为数据科学家

一、说明 在过去的 5 年里&#xff0c;我听到了很多关于 docker 容器的嗡嗡声。似乎我所有的软件工程朋友都在使用它们来开发应用程序。我想弄清楚这项技术如何使我更有效率&#xff0c;但我发现网上的教程要么太详细&#xff1a;阐明我作为数据科学家永远不会使用的功能&#…...

机器学习01 -Hello World(对鸢尾花(Iris Flower)进行训练及测试)

什么是机器学习&#xff1f; 机器学习是一种人工智能&#xff08;AI&#xff09;的子领域&#xff0c;它探索和开发计算机系统&#xff0c;使其能够从数据中学习和改进&#xff0c;并在没有明确编程指令的情况下做出决策或完成任务。 传统的程序需要程序员明确编写指令来告诉…...

android studio JNI开发

一、JNI的作用&#xff1a; 1.使Java与本地其他类型语言&#xff08;C、C&#xff09;交互&#xff1b; 2.在Java代码调用C、C等语言的代码 或者 C、C调用Java代码。 由于JAVA具有跨平台的特点&#xff0c;所以JAVA与本地代码的交互能力弱&#xff0c;采用JNI特性可以增强JA…...

CSS 高频按钮样式

矩形与圆角按钮 正常而言&#xff0c;我们遇到的按钮就这两种 -- 矩形和圆角&#xff1a; 它们非常的简单&#xff0c;宽高和圆角和背景色。 <div classbtn rect>rect</div><div classbtn circle>circle</div>.btn {margin: 8px auto;flex-shrink: 0;…...

系列二、RocketMQ简介

一、概述 RocketMQ是一款阿里巴巴开源的消息中间件。2016年11月28日&#xff0c;阿里巴巴向Apache软件基金会捐赠RabbitMQ&#xff0c;成为Apache孵化项目。2017年9月25日&#xff0c;Apache宣布RocketMQ孵化成为Apache顶级项目&#xff08;TLP&#xff09;&#xff0c;成为国内…...

论文笔记--Skip-Thought Vectors

论文笔记--Skip-Thought Vectors 1. 文章简介2. 文章概括3 文章重点技术3.1 Skip Thought Vectors3.2 词表拓展 4. 文章亮点5. 原文传送门6. References 1. 文章简介 标题&#xff1a;Skip-Thought Vectors作者&#xff1a;Ryan Kiros, Yukun Zhu, Ruslan Salakhutdinov, Rich…...

1400*B. Karen and Coffee

Examples input 3 2 4 91 94 92 97 97 99 92 94 93 97 95 96 90 100 output 3 3 0 4 input 2 1 1 1 1 200000 200000 90 100 output 0 解析&#xff1a; 题意为&#xff0c;给你多个区间&#xff08;会有重叠&#xff09;&#xff0c;每个区间的每个值都会为这个值累加…...

【业务功能篇54】Springboot项目常用工具类:HTTP状态码/客户端request

状态码常量类 /*** 返回状态码**/ public class HttpStatus {/*** 操作成功*/public static final int SUCCESS 200;/*** 对象创建成功*/public static final int CREATED 201;/*** 请求已经被接受*/public static final int ACCEPTED 202;/*** 操作已经执行成功&#xff0…...

Fine Logic

登录—专业IT笔试面试备考平台_牛客网 题目大意&#xff1a;有n个数分别为1~n&#xff0c;有m个数值对(u,v)表示u要排在v左边&#xff0c;问至少要多少个排列才能满足所有数值对至少一次 2<n<1e6;1<m<1e6 思路&#xff1a;如果数值对中要求u在v左边&#xff0c;…...

Neo4j图数据基本操作

Neo4j 文章目录 Neo4jCQL结点和关系增删改查匹配语句 根据标签匹配节点根据标签和属性匹配节点删除导入数据目前的问题菜谱解决的问题 命令行窗口 neo4j.bat console 导入rdf格式的文件 :GET /rdf/ping CALL n10s.graphconfig.init(); //初始化 call n10s.rdf.import.fetch(&q…...

前端JavaScript面试100问(中)

31、http 的理解 ? HTTP 协议是超文本传输协议&#xff0c;是客户端浏览器或其他程序“请求”与 Web 服务器响应之间的应用层通信协议。HTTPS主要是由HTTPSSL构建的可进行加密传输、身份认证的一种安全通信通道。32、http 和 https 的区别 ? 1、https协议需要到ca申请证书&…...

Docker 安全及日志管理与https部署

容器的安全性问题的根源在于容器和宿主机共享内核。如果容器里的应用导致Linux内核崩溃&#xff0c;那么整个系统可能都会崩溃。与虚拟机是不同的&#xff0c;虚拟机并没有与主机共享内核&#xff0c;虚拟机崩溃一般不会导致宿主机崩溃。 Docker 容器与虚拟机的区别 虚拟机通…...

2.3 HLSL常用函数

一、函数介绍 函数图像参考网站&#xff1a;Graphtoy 1.基本数学运算 函数 含义 示例图 min(a,b) 返回a、b中较小的数值 mul(a,b) 两数相乘用于矩阵计算 max(a,b) 返回a、b中较大的数值 abs(a) 返回a的绝对值 round(x) 返回与x最近的整数 sqrt(x) 返回x的…...

互联网的发展

概述 互联网是现代社会中举足轻重的一个领域&#xff0c;它的发展对于人类的生活和工作方式产生了深远的影响。互联网的发展经历了几个阶段&#xff0c;从初创阶段到如今的高度普及和深入应用&#xff0c;本文将详细介绍互联网的发展状况。 第一阶段&#xff1a;互联网的起源…...

STM32 CAN通讯实验程序

目录 STM32 CAN通讯实验 CAN硬件原理图 CAN外设原理图 TJA1050T硬件描述 实验线路图 回环实验 CAN头文件配置 CAN_GPIO_Config初始化 CAN初始化结构体 CAN筛选器结构体 接收中断优先级配置 接收中断函数 main文件 实验现象 补充 STM32 CAN通讯实验 CAN硬件原理图…...

Python代码片段之Django静态文件URL的配置

首先要说明这段python代码并不完整&#xff0c;而且我也没有做过测试&#xff0c;只是我在工作时参考了其中的一些个方法。这是我在找python相关源码资料里看到的一段代码&#xff0c;是Django静态文件URL配置代码片段2&#xff0c;代码中有些方法还是挺技巧的&#xff0c;做其…...

基于飞桨paddle的极简方案构建手写数字识别模型测试代码

基于飞桨paddle的极简方案构建手写数字识别模型测试代码 原始测试图片为255X252的图片 因为是极简方案采用的是线性回归模型&#xff0c;所以预测结果数字不一致 本次预测的数字是 [[3]] 测试结果&#xff1a; PS E:\project\python> & D:/Python39/python.exe e:/pro…...

soft ip与hard ip

ip分soft和hard两种&#xff0c;soft就是纯代码&#xff0c;买过来要自己综合自己pr。hard ip如mem和analog与工艺有关。 mem的lib和lef是memory compiler产生的&#xff0c;基于bitcell&#xff0c;是foundry给的。 我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起…...

MyBatisPlus从入门到精通-2

接着上一讲的Mp的分页功能 下面我们讲解条件查询功能和其他功能 解决一下日志输出和banner问题 每次卞就会输出这些日志 很不美观&#xff0c;现在我们关闭一下 这样建个xml&#xff0c;文件名为logback.xml 文件内容改成这样 配置了logback但是里面什么都没写就不会说有日…...

AI面试官:Asp.Net 中使用Log4Net (一)

AI面试官&#xff1a;Asp.Net 中使用Log4Net (一) 当面试涉及到使用log4net日志记录框架的相关问题时&#xff0c;通常会聚焦在如何在.NET或.NET Core应用程序中集成和使用log4net。以下是一些关于log4net的面试题目&#xff0c;以及相应的解答、案例和代码&#xff1a; 文章目…...

Selenium自动化元素定位方式与浏览器测试脚本

Selenium八大元素定位方法 Selenium可以驱动浏览器完成各种操作&#xff0c;比如模拟点击等。要想操作一个元素&#xff0c;首先应该识别这个元素。人有各种的特征&#xff08;属性&#xff09;&#xff0c;我们可以通过其特征找到人&#xff0c;如通过身份证号、姓名、家庭住…...

人机交互与人机混合智能的区别

人机交互和人机融合智能是两个相关但不完全相同的概念&#xff1a; 人机交互是指人与计算机之间的信息交流和互动过程。它关注的是如何设计和实现用户友好的界面&#xff0c;以便人们能够方便、高效地与计算机进行沟通和操作。人机交互通常强调用户体验和界面设计&#xff0c;旨…...

【项目】轻量级HTTP服务器

文章目录 一、项目介绍二、前置知识2.1 URI、URL、URN2.2 CGI2.2.1 CGI的概念2.2.2 CGI模式的实现2.2.3 CGI的意义 三、项目设计3.1 日志的编写3.2 套接字编写3.3 HTTP服务器实现3.4 HTTP请求与响应结构3.5 EndPoint类的实现3.5.1 EndPoint的基本逻辑3.5.2 读取请求3.5.3 构建响…...