/Almanac

:date: 历:包括万年历、皇历、日出月落、农历、黄历、干支,节气、月相,经纬度、节假日、伊斯兰历、儒略历、西历等。

Primary LanguageJavaApache License 2.0Apache-2.0

Almanac

GitHub watch GitHub issues GitHub forks GitHub stars LICENSE Badge

:包括万年历、皇历、日出月落、农历、黄历、干支,节气、月相,经纬度、节假日、伊斯兰历、儒略历、西历等。

引入依赖

<dependency>
    <groupId>cn.huangdayu</groupId>
    <artifactId>almanac</artifactId>
    <version>[1+,)</version>
</dependency>

使用示例

/**
 * 日历
 *
 * @param timeZoneDTO
 * @return
 */
AlmanacUtils.ofDay(new TimeZoneDTO("广东省","徐闻县",Calendar.getInstance()));

/**
 * 月历
 *
 * @param timeZoneDTO
 * @return
 */
AlmanacUtils.ofMonth(new TimeZoneDTO("广东省","徐闻县",Calendar.getInstance()));

/**
 * 集成抽象类的用法
 */
public class AlmanacApp extends Almanac {

    public static void main(String[] args) {
        Almanac almanac = new AlmanacApp();
        AlmanacDTO almanacDTO = almanac.ofYear()[7][11];
        TestUtils.pakMap(almanacDTO);
        for (Map.Entry<String, String> entry : TestUtils.MAP.entrySet()) {
            System.out.println(entry.getKey() + entry.getValue());
        }
    }

    @Override
    public TimeZoneDTO initTimeZone() {
        return new TimeZoneDTO("广东省","徐闻县", "2021-01-29 11:13:29");
    }
}

说明

本项目类似寿星天文历日梭万年历,但是数据还不是很全,算法有待校验。

申明

我只是代码的搬运工!如有侵权,联系删除!

特别感谢

日历说明

BUG

  • 时间无法进入公元前

不足

  • 天文历信息不足:方位、赤纬、时角、黄经、黄纬,潮汐,太阳高度角,地球直射位置,地球远日点,地球近日点,日食月食等

展示

key value value value
日期 2018年11月01日 1995年08月12日 0001年01月01日
时间 11时06分48秒667毫秒 11时10分10秒00毫秒 11时10分10秒00毫秒
星期 星期四 星期六 星期一
地点 广东 徐闻 广东 徐闻 广东 徐闻
年号 [当代]新** 公历纪元2018年 [当代]新** 公历纪元1995年 [西汉]平帝 刘衍 元始1年
农历 戊戌狗年玖月廿四 乙亥猪年柒月十七 庚申鸡年冬月十八
时辰 午时 午时 午时
黄历 戊戌年壬戌月丁酉日丙午时 乙亥年甲申月乙亥日壬午时 庚申年戊子月丁丑日丙午时
天干 戊壬丁丙 乙甲乙壬 庚戊丁丙
地支 戌戌酉午 亥申亥午 申子丑午
八字 戊戌壬戌丁酉丙午 乙亥甲申乙亥壬午 庚申戊子丁丑丙午
回历 1440年2月21日 1416年3月15日 -640年5月16日
儒略日 2458424 2449942 1721426
黄帝纪年 开元4716年 开元4693年 开元2698年
生肖
节假日 一九第8天
经度 东经 110°16'67" 东经 110°16'67" 东经 110°16'67"
纬度 北纬 20°33'33" 北纬 20°33'33" 北纬 20°33'33"
时区 +0800 东八区 +0800 东八区 +0800 东八区
港口 乌石港 乌石港 乌石港
昼长 11:22:55 12:52:48 10:54:50
夜长 12:37:04 11:07:11 13:05:09
天亮 06:18:41 05:55:05 06:50:20
日出 06:41:27 06:18:10 07:14:22
中天 12:22:54 12:44:34 12:41:47
日落 18:04:22 19:10:58 18:09:12
天黑 18:27:07 19:34:03 18:33:14
月出 00:13:02 20:13:13 03:35:37
月中 06:55:44 13:52:54 09:30:08
月落 13:38:27 07:32:35 15:24:39
月相 下弦 00:40:14
月天数 30天 30天 30天
大月否
闰月否
闰年否
星座 天蝎座 狮子座 摩羯座
下一节气 2018-11-07 19:31:39 立冬 1995-08-23 22:34:50 处暑 1-01-06 20:41:46 小寒
春分 2018-03-21 00:15:24 1995-03-21 10:14:27 1-03-23 05:43:49
夏至 2018-06-21 18:07:12 1995-06-22 04:34:22 1-06-25 04:53:32
秋分 2018-09-23 09:54:01 1995-09-23 20:13:00 1-09-25 15:39:49
冬至 2018-12-22 06:22:38 1995-12-22 16:16:47 1-12-23 08:19:28

Almanac APP

演示

设置日期 设置时间 设置位置

下载

源码

参考文献

在线工具

相关开源

License

Copyright 2018 huangdayu

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.