## 实例化 阳历的实例化有以下几种方式: 1. Solar.fromYmd(year, month, day) > 指定
阳历年(数字)
、
阳历月(数字)
、
阳历日(数字)
生成阳历对象。注意月份为1到12。 2. Solar.fromYmdHms(year, month, day, hour, minute, second) > 指定
阳历年(数字)
、
阳历月(数字)
、
阳历日(数字)
、
阳历小时(数字)
、
阳历分钟(数字)
、
阳历秒钟(数字)
生成阳历对象。注意月份为1到12。 3. Solar.fromDate(date) > 指定
日期(Date)
生成阳历对象 4. Solar.fromJulianDay(julianDay) > 指定
儒略日(小数)
生成阳历对象 5. Solar.fromBaZi(yearGanZhi, monthGanZhi, dayGanZhi, timeGanZhi, sect, baseYear) > 通过八字
年柱
、
月柱
、
日柱
、
时柱
获取匹配的阳历列表。
sect
为流派,可选1或2,不传则默认为2。
baseYear
为起始年份,支持最小传1,不传则默认为1900。该方法可能返回多条满足条件的记录。 ### 示例代码
javascript
java
csharp
php
python
go
swift
// 年月日 var d = Solar.fromYmd(2016, 1, 1); console.log(d); // 年月日时分秒 d = Solar.fromYmdHms(2016, 1, 1, 20, 35, 0); console.log(d); // 日期 d = Solar.fromDate(new Date()); console.log(d.toFullString()); // 儒略日 d = Solar.fromJulianDay(2458960.5); console.log(d.toFullString()); // 八字反推阳历 var l = Solar.fromBaZi('庚子', '辛巳', '庚午', '丙子'); for (var i=0, j=l.length; i < j; i++) { d = l[i]; console.log(d.toFullString()); }
// 年月日 Solar d = Solar.fromYmd(2016, 1, 1); System.out.println(d); // 年月日时分秒 d = Solar.fromYmdHms(2016, 1, 1, 20, 35, 0); System.out.println(d); // 日期 d = Solar.fromDate(new Date()); System.out.println(d.toFullString()); // 儒略日 d = Solar.fromJulianDay(2458960.5); System.out.println(d.toFullString()); // 八字反推阳历 List<Solar> l = Solar.fromBaZi("庚子", "辛巳", "庚午", "丙子"); for (Solar solar : l) { System.out.println(solar.toFullString()); }
// 年月日 var d = Solar.FromYmd(2016, 1, 1); Console.WriteLine(d); // 年月日时分秒 d = Solar.FromYmdHms(2016, 1, 1, 20, 35, 0); Console.WriteLine(d); // 日期 d = Solar.FromDate(new Date()); Console.WriteLine(d.FullString); // 儒略日 d = Solar.FromJulianDay(2458960.5); Console.WriteLine(d.FullString); // 八字反推阳历 var l = Solar.FromBaZi("庚子", "辛巳", "庚午", "丙子"); foreach (var solar in solars) { Console.WriteLine(solar.FullString); }
// 年月日 $d = Solar::fromYmd(2016, 1, 1); echo $d."\n"; // 年月日时分秒 $d = Solar::fromYmdHms(2016, 1, 1, 20, 35, 0); echo $d."\n"; // 日期 $d = Solar::fromDate(new DateTime()); echo $d->toFullString()."\n"; // 儒略日 $d = Solar::fromJulianDay(2458960.5); echo $d->toFullString()."\n"; // 八字反推阳历 try { $l = Solar::fromBaZi("庚子", "癸未", "乙丑", "丁亥"); foreach ($l as $solar) { echo $solar->toFullString() . "\n"; } } catch (Exception $e) { echo $e->getMessage(); }
# 年月日 d = Solar.fromYmd(2016, 1, 1) print d # 年月日时分秒 d = Solar.fromYmdHms(2016, 1, 1, 20, 35, 0) print d # 日期 d = Solar.fromDate(datetime.now()) print d.toFullString() # 儒略日 d = Solar.fromDate(datetime.now()) print d.toFullString() # 八字反推阳历 l = Solar.fromBaZi("庚子", "戊子", "己卯", "庚午") for solar in l: print solar.toFullString()
// 年月日 d := calendar.NewSolarFromYmd(2016, 1, 1) fmt.Println(d) // 年月日时分秒 d = calendar.NewSolarFromYmdHms(2016, 1, 1, 20, 35, 0) fmt.Println(d) // 日期 d = calendar.NewSolarFromDate(time.Now()) fmt.Println(d.ToFullString()) // 儒略日 d = calendar.NewSolarFromJulianDay(2459045.5) fmt.Println(d.ToFullString()) // 八字反推阳历 for i := calendar.ListSolarFromBaZi("庚子", "戊子", "己卯", "庚午").Front(); i != nil; i = i.Next() { fmt.Println(i.Value.(*calendar.Solar).ToFullString()) }
// 年月日 var d = Solar.fromYmd(year: 2016, month: 1, day: 1) println(d) // 年月日时分秒 d = Solar.fromYmdHms(year: 2016, month: 1, day: 1, hour: 20, minute: 35, second: 0) println(d.description) // 日期 d = Solar.fromDate(Date()) println(d.fullString) // 儒略日 d = Solar.fromJulianDay(julianDay: 2459045.5) println(d.fullString) // 八字反推阳历 let solars = Solar.fromBaZi(yearGanZhi: "庚子", monthGanZhi: "戊子", dayGanZhi: "己卯", timeGanZhi: "庚午") for d in solars { println(d.fullString) }
### 输出