关于时间,日期,星期的一些函数代码
1、判断是否是闰年(defun XD::DOC:leapyear-p ( y )
(and (zerop (rem y 4))
(or (zerop (rem y 400))
(not (zerop (rem y 100)))
)
)
)
2、求给定日期(年 月 日 ),整数或者字符串是星期几, 0-周日,1-周一.......
(defun XD::DOC:weekday (y m d)
(if (= (type y) 'str)
(setq y (atoi y))
)
(if (= (type m) 'str)
(setq m (atoi m))
)
(if (= (type d) 'str)
(setq d (atoi d))
)
(if (< m 3)
(setq y (1- y)
m (+ m 12)
)
)
(setq ret (rem (+ 5 d (/ (* 26 (1+ m)) 10) y (/ y 4) (* 6 (/ y 100))
(/ y 400)
) 7
)
)
(cond
((= ret 6)
0
)
(t
(1+ ret)
)
)
)
下面结果说明2017年5月2日是星期二
命令: (XD::DOC:WEEKday 2017 5 2)
2
3、求具体日期是当年的第几个星期
**** Hidden Message *****
命令: (XD::DOC:WEEKNUMBER "2017" "5" "2")
18
命令: (XD::DOC:WEEKNUMBER 2017 5 2)
18
2017年5月2日是2017年的第18个星期
时间转换函数很需要
本帖最后由 HLCAD 于 2017-5-2 17:28 编辑
感谢版主分享代码!
能算出对应的阴历就好了
谢谢分享 谢谢老大分享!
谢谢分享~
这个好,正要学习一下 谢谢楼主分享 有用,谢谢分享。 HLCAD 发表于 2017-5-2 17:19
这个倒是很有想法,,,,
谢谢分享!
谢谢分享!谢谢分享!
有用,谢谢分享。 谢谢楼主,学习下 有可以转换成两个时间之间是差多少天吗? 感谢版主分享代码!