Excel日期数字转化成时间格式

2024-05-10 20:20

本文主要是介绍Excel日期数字转化成时间格式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、5位数字转化成yyyy/mm/dd

要考虑闰年的小细节

// 输入数字转成日期(5位,excel表格日期),默认转换成YYYY-MM-DD
export function numberToDate(number, format) {if (number != undefined) {let date = new Date((number - 1) * 24 * 3600000 + 1);date.setYear(date.getFullYear() - 70);const Y = date.getFullYear() + '';const dateRel =(Y % 4 === 0 && Y % 100 !== 0) || Y % 400 == 0? new Date((number - 2) * 24 * 3600000 + 1): new Date((number - 1) * 24 * 3600000 + 1);dateRel.setYear(date.getFullYear() - 70);const M = (dateRel.getMonth() + 1 < 10 ? '0' + (dateRel.getMonth() + 1) : dateRel.getMonth() + 1) + '';const D = (dateRel.getDate() < 10 ? '0' + dateRel.getDate() : dateRel.getDate()) + '';if (format && format.length == 1) {return Y + format + M + format + D;} else {return Y + '-' + M + '-' + D;}} else {return undefined;}
}

2、带精度的5位数字转化成yyyy/mm/dd hh:mm:ss

function ExcelDateToJSDate(serial) {var utc_days  = Math.floor(serial - 25569);var utc_value = utc_days * 86400;                                        var date_info = new Date(utc_value * 1000);var fractional_day = serial - Math.floor(serial) + 0.0000001;var total_seconds = Math.floor(86400 * fractional_day);var seconds = total_seconds % 60;total_seconds -= seconds;var hours = Math.floor(total_seconds / (60 * 60));var minutes = Math.floor(total_seconds / 60) % 60;return new Date(date_info.getFullYear(), date_info.getMonth(), date_info.getDate(), hours, minutes, seconds);
}ExcelDateToJSDate(44988.916666666664)
// 获取到的是 Fri Mar 03 2023 22:00:00 GMT+0800 (中国标准时间)

参考网站:
https://blog.csdn.net/vayne_1/article/details/129748002

这篇关于Excel日期数字转化成时间格式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/977458

相关文章

捷瑞数字业绩波动性明显:关联交易不低,募资必要性遭质疑

《港湾商业观察》施子夫 5月22日,山东捷瑞数字科技股份有限公司(以下简称,捷瑞数字)及保荐机构国新证券披露第三轮问询的回复,继续推进北交所上市进程。 从2023年6月递表开始,监管层已下发三轮审核问询函,关注到捷瑞数字存在同业竞争、关联交易、募资合理性、期后业绩波动等焦点问题。公司的上市之路多少被阴影笼罩。​ 业绩波动遭问询 捷瑞数字成立于2000年,公司是一家以数字孪生驱动的工

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

hevc和H.264格式的区别

HEVC(High Efficiency Video Coding)和H.264(也称为Advanced Video Coding,AVC)都是视频压缩标准,但它们之间存在一些显著的区别,主要集中在压缩效率、资源需求和兼容性方面。 压缩效率 HEVC,也被称为H.265,提供了比H.264更高的压缩效率。这意味着在相同的视频质量下,HEVC能够以大约一半的比特率进行编码,从而减少存储空间需求和

二进制文件转化成文本文件

文章中如果有写错、表述不明、有疑问或者需要扩展的知识,欢迎留言或者私信~   1.区别 如果一个文件说是文本文件,使用任何一种文本编辑器打开可以展现出人类可读信息字符,因为编码都符合某种编码方式,如ASCII、UTF8、GB2312等等(在文件头可以读出来是什么编码方式,然后文本编辑器再按照规则去读取翻译成对应的字符,展示给我们的就是可读的了)。(关于编码方式不了解可以看这一篇) 如果一

Mac excel 同时冻结首行和首列

1. 选择B2窗格 2. 选择视图 3. 选择冻结窗格 最后首行和首列的分割线加粗了就表示成功了

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测 目录 时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测基本介绍程序设计参考资料 基本介绍 MATLAB实现LSTM时间序列未来多步预测-递归预测。LSTM是一种含有LSTM区块(blocks)或其他的一种类神经网络,文献或其他资料中LSTM区块可能被描述成智能网络单元,因为

java中查看函数运行时间和cpu运行时间

android开发调查性能问题中有一个现象,函数的运行时间远低于cpu执行时间,因为函数运行期间线程可能包含等待操作。native层可以查看实际的cpu执行时间和函数执行时间。在java中如何实现? 借助AI得到了答案 import java.lang.management.ManagementFactory;import java.lang.management.Threa

时间服务器中,适用于国内的 NTP 服务器地址,可用于时间同步或 Android 加速 GPS 定位

NTP 是什么?   NTP 是网络时间协议(Network Time Protocol),它用来同步网络设备【如计算机、手机】的时间的协议。 NTP 实现什么目的?   目的很简单,就是为了提供准确时间。因为我们的手表、设备等,经常会时间跑着跑着就有误差,或快或慢的少几秒,时间长了甚至误差过分钟。 NTP 服务器列表 最常见、熟知的就是 www.pool.ntp.org/zo

20170723 做的事 ecdsa的签名验证时间短于bls signature

1 今天在虚拟机 /home/smile/Desktop/20170610/Test//time_ecdsa 文件夹下,找到ecdsa的验证时间是 989.060606μs μs 先 make ,然后run。 再取BLS的签名生成时间: ./run  2  gnuplot 画图,画对比的时间 gnuplot 画图参考教程 http://blog.sciencen

数据时代的数字企业

1.写在前面 讨论数据治理在数字企业中的影响和必要性,并介绍数据治理的核心内容和实践方法。作者强调了数据质量、数据安全、数据隐私和数据合规等方面是数据治理的核心内容,并介绍了具体的实践措施和案例分析。企业需要重视这些方面以实现数字化转型和业务增长。 数字化转型行业小伙伴可以加入我的星球,初衷成为各位数字化转型参考库,星球内容每周更新 个人工作经验资料全部放在这里,包含数据治理、数据要