From ced6954a3b857b2ebd8b3edf9b447a594cc625c3 Mon Sep 17 00:00:00 2001
From: 6tail <6tail@6tail.cn>
Date: Mon, 6 Apr 2020 19:06:04 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=97=B6=E8=BE=B0=E7=BA=B3?=
=?UTF-8?q?=E9=9F=B3=E4=BA=94=E8=A1=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 2 +-
README_EN.md | 2 +-
pom.xml | 5 +++--
src/main/java/com/nlf/calendar/Lunar.java | 20 +++++++++++++++++---
src/main/java/com/nlf/calendar/Solar.java | 2 ++
src/test/java/test/LunarTest.java | 2 +-
src/test/java/test/SolarTest.java | 2 +-
7 files changed, 26 insertions(+), 9 deletions(-)
diff --git a/README.md b/README.md
index e972a7a..59d13c5 100644
--- a/README.md
+++ b/README.md
@@ -66,7 +66,7 @@ lunar是一个无依赖的支持阳历和阴历的日历工具库。
输出结果:
- 壹玖捌陆年肆月廿一 丙寅(虎)年 癸巳(蛇)月 癸酉(鸡)日 子时 纳音[炉中火 长流水 剑锋金] 星期四 北方玄武 斗木獬 彭祖百忌[癸不词讼理弱敌强 酉不会客醉坐颠狂] 喜神方位[巽](东南) 阳贵神方位[巽](东南) 阴贵神方位[震](正东) 福神方位[兑](正西) 财神方位[离](正南) 冲[(丁卯)兔] 煞[东]
+ 壹玖捌陆年肆月廿一 丙寅(虎)年 癸巳(蛇)月 癸酉(鸡)日 子(鼠)时 纳音五行[炉中火 长流水 剑锋金 海中金] 星期四 北方玄武 星宿[斗木獬](吉) 彭祖百忌[癸不词讼理弱敌强 酉不会客醉坐颠狂] 喜神方位[巽](东南) 阳贵神方位[巽](东南) 阴贵神方位[震](正东) 福神方位[兑](正西) 财神方位[离](正南) 冲[(丁卯)兔] 煞[东]
1986-05-29 00:00 星期四 双子座
## 文档
diff --git a/README_EN.md b/README_EN.md
index 80f5239..7299d5d 100644
--- a/README_EN.md
+++ b/README_EN.md
@@ -66,7 +66,7 @@ If you will use jars in your projects, I suggest you to download latest snapshot
Output:
- 壹玖捌陆年肆月廿一 丙寅(虎)年 癸巳(蛇)月 癸酉(鸡)日 子时 纳音[炉中火 长流水 剑锋金] 星期四 北方玄武 斗木獬 彭祖百忌[癸不词讼理弱敌强 酉不会客醉坐颠狂] 喜神方位[巽](东南) 阳贵神方位[巽](东南) 阴贵神方位[震](正东) 福神方位[兑](正西) 财神方位[离](正南) 冲[(丁卯)兔] 煞[东]
+ 壹玖捌陆年肆月廿一 丙寅(虎)年 癸巳(蛇)月 癸酉(鸡)日 子(鼠)时 纳音五行[炉中火 长流水 剑锋金 海中金] 星期四 北方玄武 星宿[斗木獬](吉) 彭祖百忌[癸不词讼理弱敌强 酉不会客醉坐颠狂] 喜神方位[巽](东南) 阳贵神方位[巽](东南) 阴贵神方位[震](正东) 福神方位[兑](正西) 财神方位[离](正南) 冲[(丁卯)兔] 煞[东]
1986-05-29 00:00 星期四 双子座
## Documentation
diff --git a/pom.xml b/pom.xml
index be83dfc..22e42d4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,7 +77,8 @@
maven-surefire-plugin
2.5
- true
+ -Dfile.encoding=UTF-8
+ false
@@ -139,4 +140,4 @@
${project.artifactId}-${project.version}
-
\ No newline at end of file
+
diff --git a/src/main/java/com/nlf/calendar/Lunar.java b/src/main/java/com/nlf/calendar/Lunar.java
index e2d3706..668795e 100644
--- a/src/main/java/com/nlf/calendar/Lunar.java
+++ b/src/main/java/com/nlf/calendar/Lunar.java
@@ -769,6 +769,14 @@ public class Lunar{
return LunarUtil.NAYIN.get(getDayInGanZhi());
}
+ /**
+ * 获取时辰纳音
+ * @return 时辰纳音,如剑锋金
+ */
+ public String getTimeNaYin(){
+ return LunarUtil.NAYIN.get(getTimeInGanZhi());
+ }
+
public String toFullString(){
StringBuilder s = new StringBuilder();
s.append(toString());
@@ -786,12 +794,16 @@ public class Lunar{
s.append(getDayShengXiao());
s.append(")日 ");
s.append(getTimeZhi());
- s.append("时 纳音[");
+ s.append("(");
+ s.append(getTimeShengXiao());
+ s.append(")时 纳音五行[");
s.append(getYearNaYin());
s.append(" ");
s.append(getMonthNaYin());
s.append(" ");
s.append(getDayNaYin());
+ s.append(" ");
+ s.append(getTimeNaYin());
s.append("] 星期");
s.append(getWeekInChinese());
for(String f:getFestivals()){
@@ -814,11 +826,13 @@ public class Lunar{
s.append(getGong());
s.append("方");
s.append(getShou());
- s.append(" ");
+ s.append(" 星宿[");
s.append(getXiu());
s.append(getZheng());
s.append(getAnimal());
- s.append(" 彭祖百忌[");
+ s.append("](");
+ s.append(getXiuLuck());
+ s.append(") 彭祖百忌[");
s.append(getPengZuGan());
s.append(" ");
s.append(getPengZuZhi());
diff --git a/src/main/java/com/nlf/calendar/Solar.java b/src/main/java/com/nlf/calendar/Solar.java
index a5e7bcc..06f3512 100644
--- a/src/main/java/com/nlf/calendar/Solar.java
+++ b/src/main/java/com/nlf/calendar/Solar.java
@@ -43,6 +43,8 @@ public class Solar{
public Solar(int year,int month,int day){
calendar = Calendar.getInstance();
calendar.set(year,month-1,day);
+ calendar.set(Calendar.HOUR_OF_DAY,0);
+ calendar.set(Calendar.MINUTE,0);
this.year = year;
this.month = month;
this.day = day;
diff --git a/src/test/java/test/LunarTest.java b/src/test/java/test/LunarTest.java
index 7694e19..f8f1304 100644
--- a/src/test/java/test/LunarTest.java
+++ b/src/test/java/test/LunarTest.java
@@ -15,7 +15,7 @@ public class LunarTest {
public void test(){
Lunar date = new Lunar(2019,3,27);
Assert.assertEquals("贰零壹玖年叁月廿七",date.toString());
- Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 子时 纳音[平地木 大林木 平地木] 星期三 (七殿泰山王诞) 西方白虎 参水猿 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.toFullString());
+ Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 子(鼠)时 纳音五行[平地木 大林木 平地木 海中金] 星期三 (七殿泰山王诞) 西方白虎 星宿[参水猿](吉) 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.toFullString());
Assert.assertEquals("2019-05-01",date.getSolar().toString());
Assert.assertEquals("2019-05-01 00:00 星期三 (劳动节) 金牛座",date.getSolar().toFullString());
}
diff --git a/src/test/java/test/SolarTest.java b/src/test/java/test/SolarTest.java
index b840d2d..4f0b993 100644
--- a/src/test/java/test/SolarTest.java
+++ b/src/test/java/test/SolarTest.java
@@ -17,7 +17,7 @@ public class SolarTest {
Assert.assertEquals("2019-05-01",date.toString());
Assert.assertEquals("2019-05-01 00:00 星期三 (劳动节) 金牛座",date.toFullString());
Assert.assertEquals("贰零壹玖年叁月廿七",date.getLunar().toString());
- Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 酉时 纳音[平地木 大林木 平地木] 星期三 (七殿泰山王诞) 西方白虎 参水猿 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.getLunar().toFullString());
+ Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 子(鼠)时 纳音五行[平地木 大林木 平地木 海中金] 星期三 (七殿泰山王诞) 西方白虎 星宿[参水猿](吉) 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.getLunar().toFullString());
}
}