[ASP.NET]民國年與農曆年類別
這又是一篇很久之前從保哥那邊挖到的寶藏,原文在這:找到民國(TaiwanCalendar)與農曆(TaiwanLunisolarCalendar)的日曆類別
由於程式開發人員的腦容量,都透過網路跟硬碟在放的,每次我總是會忘記類別名稱,這邊隨手做個記錄。
在這邊也感謝保哥的無私分享。(如有不妥請留言告知,謝謝)
另外一篇參考是來自Anita 的.NET 世界的.NET 可以算出農曆嗎?
利用TaiwanLunisolarCalendar()的method去算天干地支的index,只需要再用string array去抓對應的天干地支出來即可。
兩個類別都是在System.Globalization底下,
- TaiwanCalendar :「民國年」
- TaiwanLunisolarCalendar :「農曆」
.aspx:
<%@ Page AutoEventWireup="true" CodeFile="TaiwanCalendarTest.aspx.cs" Inherits="TaiwanCalendarTest"
Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>未命名頁面</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="民國年"></asp:Label>
<asp:TextBox ID="txtYear" runat="server"></asp:TextBox>
<asp:Label ID="Label2" runat="server" Text="民國月"></asp:Label>
<asp:TextBox ID="txtMonth" runat="server"></asp:TextBox>
<asp:Label ID="Label3" runat="server" Text="民國日"></asp:Label>
<asp:TextBox ID="txtDay" runat="server"></asp:TextBox>
<br />
<br />
<asp:Label ID="Label4" runat="server" Text="農曆年"></asp:Label>
<asp:TextBox ID="txtLunisolarYear" runat="server"></asp:TextBox>
<asp:Label ID="Label5" runat="server" Text="農曆月"></asp:Label>
<asp:TextBox ID="txtLunisolarMonth" runat="server"></asp:TextBox>
<asp:Label ID="Label6" runat="server" Text="農曆日"></asp:Label>
<asp:TextBox ID="txtLunisolarDay" runat="server"></asp:TextBox>
<br />
<asp:Label ID="Label7" runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>
.cs:



















this.txtYear.Text = tc.GetYear(now).ToString();



TaiwanLunisolarCalendar tlc = new TaiwanLunisolarCalendar();






String 天干 = "0甲乙丙丁戊己庚辛壬癸";


int lun60Year = cal.GetSexagenaryYear(now);



int lunMonth = cal.GetMonth(now);


if (leapMonth > 0 && lunMonth >= leapMonth)









結果:總算不需要在用西元年-1911了。
blog 與課程更新內容,請前往新站位置:http://tdd.best/