ASP.NET如何显示农历时间

CS部分代码如下:

代码如下: public string ChineseTimeNow = "";  
public string ForignTimeNow = "";  
private static ChineseLunisolarCalendar calendar = new ChineseLunisolarCalendar();  
private static string ChineseNumber = "〇一二三四五六七八九";  
public const string CelestialStem = "甲乙丙丁戊己庚辛壬癸";  
public const string TerrestrialBranch = "子丑寅卯辰巳午未申酉戌亥";  
public static readonly string[] ChineseDayName = new string[] {  
        "初一","初二","初三","初四","初五","初六","初七","初八","初九","初十",  
        "十一","十二","十三","十四","十五","十六","十七","十八","十九","二十",  
        "廿一","廿二","廿三","廿四","廿五","廿六","廿七","廿八","廿九","三十"};  
public static readonly string[] ChineseMonthName = new string[] { "正", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二" };

override protected void Page_Load(object sender, EventArgs e)  
{  
        base.Page_Load(sender, e);  
        userName = Session["Admin"].ToString();  
        ChineseTimeNow=GetChineseDate(DateTime.Now);  
        ForignTimeNow = DateTime.Now.GetDateTimeFormats(‘D‘)[0].ToString();  
}

/// <summary>  
/// 获取一个公历日期对应的完整的农历日期  
/// </summary>  
/// <param name="time">一个公历日期</param>  
/// <returns>农历日期</returns>  
public string GetChineseDate(DateTime time)  
{  
        string strY = GetYear(time);  
        string strM = GetMonth(time);  
        string strD = GetDay(time);  
        string strSB = GetStemBranch(time);  
        string strDate = strY + "(" + strSB + ")年 " + strM + "月 " + strD;  
        return strDate;  
}  
/// <summary>  
/// 获取一个公历日期的农历干支纪年  
/// </summary>  
/// <param name="time">一个公历日期</param>  
/// <returns>农历干支纪年</returns>  
public string GetStemBranch(DateTime time)  
{  
        int sexagenaryYear = calendar.GetSexagenaryYear(time);  
        string stemBranch = CelestialStem.Substring(sexagenaryYear % 10 - 1, 1) + TerrestrialBranch.Substring(sexagenaryYear % 12 - 1, 1);  
        return stemBranch;  
}

/// <summary>  
/// 获取一个公历日期的农历年份  
/// </summary>  
/// <param name="time">一个公历日期</param>  
/// <returns>农历年份</returns>  
public string GetYear(DateTime time)  
{  
nbsp;       StringBuilder sb = new StringBuilder();  
        int year = calendar.GetYear(time);  
        int d;  
        do  
        {  
            d = year % 10;  
            sb.Insert(0, ChineseNumber[d]);  
            year = year / 10;  
        } while (year > 0);  
        return sb.ToString();  
}

IT经典笑语录:程序员眼中的女人:有的女人就像Windows 虽然很优秀,但是安全隐患太大。有的女人就像UNIX 她条件很好,然而不是谁都能玩的起。有的女人就像C# 长的很漂亮,但是家务活不行。有的女人就像C++,她会默默的为你做很多的事情。有的女人就像JAVA,只需一点付出她就会为你到处服务。有的女人就像JAVA script,虽然对她处处小心但最终还是没有结果。有的女人就像汇编 虽然很麻烦,但是有的时候还得求它。

/// <summary>  
/// 获取一个公历日期的农历月份  
/// </summary>  
/// <param name="time">一个公历日期</param>  
/// <returns>农历月份</returns>  
public string GetMonth(DateTime time)  
{  
        int month = calendar.GetMonth(time);  
        int year = calendar.GetYear(time);  
        int leap = 0;  
  
        //正月不可能闰月  
        for (int i = 3; i <= month; i++)  
        {  
            if (calendar.IsLeapMonth(year, i))  
            {  
                leap = i;  
                break; //一年中最多有一个闰月  
            }  
  
        }  
        if (leap > 0) month--;  
        return (leap == month + 1 ? "闰" : "") + ChineseMonthName[month - 1];  
}

/// <summary>  
/// 获取一个公历日期的农历日  
/// </summary>  
/// <param name="time">一个公历日期</param>  
/// <returns>农历日</returns>  
public string GetDay(DateTime time)  
{  
        return ChineseDayName[calendar.GetDayOfMonth(time) - 1];  
}

前台部分代码如下:

代码如下: <table style="">  
 <tr valign="bottom">  
<td valign="bottom"> <%=ForignTimeNow%><br /></td>>  
   </tr>  
   <tr valign="bottom">  
  <td valign="bottom"> <%=ChineseTimeNow %></td>  
 </tr>  
 </table>

from:http://www.codes51.com/article/detail_93960.html

时间: 2024-08-30 02:25:59

ASP.NET如何显示农历时间的相关文章

ASP.NET显示农历时间(二)

前面有一篇取农历时间的(http://blog.csdn.net/yysyangyangyangshan/article/details/6802950),不过没有进行封装使用起来需要手动修改.本次进行简单封装一下,可以直接进行调用. 代码如下: 取农历时间的类 public class CountryDate { public string ChineseTimeNow = ""; public string ForignTimeNow = ""; private

【转】js写显示农历的日期

网上查找了个,记录下. <body> <!-- 中国农历开始 --> <SCRIPT language=JavaScript> <!-- var lunarInfo=new Array( 0x04bd8,0x04ae0,0x0a570,0x054d5,0x0d260,0x0d950,0x16554,0x056a0,0x09ad0,0x055d2, 0x04ae0,0x0a5b6,0x0a4d0,0x0d250,0x1d255,0x0b540,0x0d6a0,0x0

.NET Core 中使用 Humanizer 显示友好时间格式

今天在将一个 .net framework 项目迁移至 .net core 的过程中,在迁移到显示友好时间格式(比如“1分钟前”,“1小时前”)的代码时,找了找看有没有对应的开源库,结果找到了 Humanizer ,顺手体验了一下,感觉不错,在这篇随笔中记录一下. 由于显示的是中文友好时间格式,需要安装 nuget 包 Humanizer.Core.zh-CN . <ItemGroup> <PackageReference Include="Humanizer.Core.zh-

网页跳转,可以任意规定延迟显示的时间

<html> <head> <title>页面跳转</title> <meta http-equiv="refresh" content="3;url=http://hi.baidu.com/xiangso"> </head> <body> 此页面三秒后跳转到http://hi.baidu.com/xiangso</body> </html> 数字 3 代表延

实时显示系统时间

1.概述 在浏览很多网站时,都会发现在网站中加入了显示当前系统时间的功能,在网页中显示当前系统时间,不仅可以方便浏览者掌握当前时间,而且还美化了网页. 2.技术要点 利用Date对象来实现.首先创建一个表示当前系统时间的Date()对象,然后通过Date对象的getXxx()方法获得当前系统时间的年.月.日.小时.分.秒和星期的值,接下来将获得的这些值组合成一个日期时间字符串,并将日期时间字符串设置成为<div>标签的内容,最后通过window对象的setTimeout()函数每隔1秒调用一个

IIS 管理器ASP.NET不显示新装版本

在dos下运行命令 :%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i在dos下运行命令 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i运行完成,提示ASP.NET (4.0.30319)安装完毕 IIS 管理器ASP.NET不显示新装版本,布布扣,bubuko.com

Jquery一个显示当前时间的简单插件

先看看效果: html代码部分,其他代码都省略了,就把显示时间的标签贴出来,就是一个简单的<p>标签 <p id="show"></p> 接下来就是自定义插件部分了,我把这个插件放在了myfunction.js中,代码如下: 1 //动态的显示当前时间 2 ;(function($){ 3 "use strict"; 4 var time = ""; 5 //获得当前的时间 6 function current

前端开发自学之JavaScript——显示当前时间

1 <html> 2 <head> 3 <title>JavaScript</title> 4 <script language="javascript"> 5 function showtime(){ 6 var now_time = new Date() ; // 创建时间对象 7 var hours = now_time.getHours() ; //获得当前小时数 8 var minutes = now_time.ge

关于时间的操作(JavaScript版)——年月日三级联动(默认显示系统时间)

这个功能是大学时自己使用纯JavaScript写的,没有借助Jquery,呵呵呵,看起来有点繁琐,可是在当时依稀的记得功能实现后自己好好的高兴一把了呢,从现在来看那时候的自己是多么的幼稚.多么的无知: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>年月日三级联动(默认显示系统时间)</title> <