精易论坛

标题: 公历和农历互转 纯源码实现 [打印本页]

作者: dot    时间: 2023-8-24 21:28
标题: 公历和农历互转 纯源码实现
最近用到了公历农历互转的代码,找了N久,没找到满意的,最后在网友发的java源码上找到灵感。转换日期范围为1900-2099年。(非抓取,非接口,非网络)


温馨提醒后来者:公历 农历属于2个不同的历法,本身无法通过简单的公式换算,农历的编排是由国家机构颁发的,因为农历属于天文历法,每月的初一必须是朔月,所以,大家也没必要花太多时间去学习的。
本源码只调用了精易模块,所以就不上传该模块了。


公历农历互转.e

937.77 KB, 下载次数: 67, 下载积分: 精币 -2 枚


作者: 精彩的鸟    时间: 2023-8-24 21:51
好的,学习学习
作者: ZHuanR    时间: 2023-8-24 22:16
新技能已get√
作者: bianyuan456    时间: 2023-8-24 23:45
已经顶贴,感谢您对论坛的支持!
作者: Inverse    时间: 2023-8-25 00:58
谢谢分享


作者: pjm123    时间: 2023-8-25 08:35
谢谢分享  
作者: 一指温柔    时间: 2023-8-25 08:39
感谢分享
作者: 396384183    时间: 2023-8-25 08:48
新技能已get√
作者: 商务    时间: 2023-8-25 09:01
感谢楼主分享!
作者: 君九    时间: 2023-8-25 09:34
谢谢分享  
作者: tw1    时间: 2023-8-25 12:29
谢谢分享  
作者: ttggnn    时间: 2023-8-26 21:44
感谢分享
作者: dot    时间: 2023-8-28 20:02
农历转公历处的代码这个地方得修改一下,
  
如果真 (局_闰月 ≠ 0)
判断 (局_月 = 局_闰月 参_是否闰月 局_月 > 局_闰月)
判断 (取文本中间 (局_当年农历信息, 13 + 局_闰月, 1)“0”)
局_公历日数 = 局_公历日数 + 29

局_公历日数 = 局_公历日数 + 30



替换为
  
如果真 (参_是否闰月 局_闰月 = 局_月)
判断 (取文本中间 (局_当年农历信息, 12 + 局_月, 1)“0”)
局_公历日数 = 局_公历日数 + 29

局_公历日数 = 局_公历日数 + 30


如果真 (局_闰月 ≠ 0 局_月 > 局_闰月)
判断 (取文本中间 (局_当年农历信息, 13 + 局_闰月, 1)“0”)
局_公历日数 = 局_公历日数 + 29

局_公历日数 = 局_公历日数 + 30


作者: pipicool    时间: 2023-9-4 16:49
学习一下
作者: gp5165203    时间: 2024-6-9 12:17
太感谢了,楼主牛
作者: ss4680    时间: 2024-12-22 16:52
新技能已get√
作者: wffhhy    时间: 2025-5-16 20:26
太感谢了,楼主牛




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