精易论坛

标题: 时间_到时间戳 2038-01-20 开始无法返回正确时间戳 [打印本页]

作者: 笑春风    时间: 2020-3-27 01:04
标题: 时间_到时间戳 2038-01-20 开始无法返回正确时间戳
如题,时间_到时间戳 命令, 2038-01-20 开始无法返回正确时间戳。
调试输出 (时间_到时间戳 (到时间 (“2038-01-19”)))
“2147443200000”

调试输出 (时间_到时间戳 (到时间 (“2038-01-20”)))
“-2147437696000”


作者: eavesyang    时间: 2020-3-27 02:05
.版本 2

.子程序 时间_到时间戳, 文本型, 公开, 把指定日期时间转换为10位或13位时间戳,默认生成13位时间戳。13位:1325252169718,10位:1325252169
.参数 参_时间, 日期时间型, 可空, 可为空,默认为现行时间  上限 2038 年 01 月 19 日 03 时 14 分 07 秒
.参数 参_十位时间戳, 逻辑型, 可空, 本参数为真时,将生成10位时间戳返回
.局部变量 局_时间, Fanta_时间
.局部变量 返回值, 文本型
.局部变量 毫秒数, 文本型
.局部变量 时间a, 文本型

参_时间 = 选择 (是否为空 (参_时间), 取现行时间 (), 参_时间)
VariantTimeToSystemTime (参_时间, 局_时间)
毫秒数 = 取重复文本 (3 - 取文本长度 (到文本 (局_时间.毫)), “0”) + 到文本 (局_时间.毫)

.如果 (取年份 (参_时间) ≥ 2038)
    时间a = 到文本 (取时间间隔 (参_时间, 到时间 (“1970-01-01 08:00:00”), #分钟) × 60)
.否则
    时间a = 到文本 (取时间间隔 (参_时间, 到时间 (“1970-01-01 08:00:00”), #秒))

.如果结束

返回 (选择 (参_十位时间戳, 取文本左边 (时间a + 毫秒数, 10), 时间a + 毫秒数))

作者: weihua2018    时间: 2020-3-27 04:28
eavesyang 发表于 2020-3-27 02:05
.版本 2

.子程序 时间_到时间戳, 文本型, 公开, 把指定日期时间转换为10位或13位时间戳,默认生成13位时 ...

你这个复制粘贴是啥意思
作者: qq793359277    时间: 2020-3-27 05:00
本帖最后由 qq793359277 于 2020-3-27 05:07 编辑

这是微软的问题  






欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4