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

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

  1. ASP.NET农历时间显示(两)

    在拍摄的月球时前(http://blog.csdn.net/yysyangyangyangshan/article/details/6802950),只是没有进行封装使用起来须要手动改动. 本次进行简 ...

  2. 电脑时间显示秒 win10电脑显示农历

    win10电脑时间显示秒 显示农历. Win10怎样让任务栏时间显示秒_百度经验 win10电脑显示农历 网上搜到的不管用. 直接下载win10万年历.我下载的人生日历. 最烦广告, 还有一些流氓行为 ...

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

    网上查找了个,记录下. <body> <!-- 中国农历开始 --> <SCRIPT language=JavaScript> <!-- var lunarI ...

  4. [转]显示农历日期的JS

    本文转自:http://blog.sina.com.cn/s/blog_47377e77010009xc.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD ...

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

    今天在将一个 .net framework 项目迁移至 .net core 的过程中,在迁移到显示友好时间格式(比如“1分钟前”,“1小时前”)的代码时,找了找看有没有对应的开源库,结果找到了 Hum ...

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

    <html> <head> <title>JavaScript</title> <script language="javascript ...

  7. js显示当前时间

    闲着没事在闪存里看到有人需要js显示当前时间,就一时兴起写了个. 输出格式:“2013年12月18日 星期三 上午9:05:00 ”. <script type="text/javas ...

  8. 【温故而知新-Javascript】时间效果(显示当前时间、显示当前日期、显示页面停留时间、倒计时)

    1.显示当前时间 <body onload="showtime()"> <div>当前时间: <span id="clock"&g ...

  9. Linux环境变量的修改(永久,暂时)以及修改ls显示的时间格式

    本文转自:http://blog.sina.com.cn/s/blog_8e21864f01014u9h.html Linux修改环境变量,很简单但很重要 一.Linux的变量种类 按变量的生存周期来 ...

随机推荐

  1. Jsoup一个简短的引论——采用Java抓取网页数据

    转载请注明出处:http://blog.csdn.net/allen315410/article/details/40115479 概述 jsoup 是一款Java 的HTML解析器,可直接解析某个U ...

  2. OpenCVR 有新成员 OpenCVV OpenCVC

    OpenCVC主要负责OpenCVR报名, OpenCVV支持Android IOS Mac Windows 的client 版权声明:本文博客原创文章,博客,未经同意,不得转载.

  3. 《javascript高级编程》读书笔记(两)javascript基本概念

    第三章:基本概念 ECMAScript那里5种简单数据类型(也称基本数据类型):Undefined\Null\Boolean\Number\String,另一种复杂数据类型--Object,Objec ...

  4. PowerMockito使用详解(转)

    一.为什么要使用Mock工具 在做单元测试的时候,我们会发现我们要测试的方法会引用很多外部依赖的对象,比如:(发送邮件,网络通讯,远程服务, 文件系统等等). 而我们没法控制这些外部依赖的对象,为了解 ...

  5. iOS kvc

    kvc在我的脑海里用来更改属性的实例变量值. 今天,他们遇到了kvc第二次去学习它,在网上看了很多博客,这似乎不符合我的口味,为了提取一些以下的.总结自己的. http://www.cnblogs.c ...

  6. 在win7在结构cocos2d-x v3.2rc0开发环境(For Android)

    cocos2d-x 这是现在比较流行的游戏引擎., 因此.本文的目的在于教导新手怎样在win7下建立cocos2dx开发环境, 截止本文,cocos2dx的最新版本号为 v3.2rc0版,我将如果您的 ...

  7. C++教程之lambda表达式一

    什么是Lambda? C++ 11增加了一个很重要的特性--Lambda表达式.营里(戴维营)的兄弟都对Objective-C很熟悉,很多人多block情有独钟,将各种回调函数.代理通通都用它来实现. ...

  8. leetcode 名单 Insertion Sort List

    Insertion Sort List Total Accepted: 24444 Total Submissions: 96639My Submissions Sort a linked list ...

  9. 补间动画实现(tween)

    1.补间动画的概念: 补间动画:仅仅须要开发人员设置好动画的開始与结束的关键帧 中间帧有喜用计算机补齐. 2.种类:分为4种: ①alpha 透明度 ②alpha 透明度 ③translate 位置移 ...

  10. Do a “git export” (like “svn export”)?(转)

    Probably the simplest way to achieve this is with git archive. If you really need just the expanded ...