C#根据当前日期获取星期和阴历日期
private string GetWeek(int dayOfWeek)
{
string returnWeek = "";
switch (dayOfWeek)
{
case 1:
returnWeek = "星期一";
break;
case 2:
returnWeek = "星期二";
break;
case 3:
returnWeek = "星期三";
break;
case 4:
returnWeek = "星期四";
break;
case 5:
returnWeek = "星期五";
break;
case 6:
returnWeek = "星期六";
break;
case 0:
returnWeek = "星期日";
break;
}
return returnWeek;
}
private string GetChineseDateTime(DateTime datetime)
{
ChineseLunisolarCalendar ChinaData = new ChineseLunisolarCalendar(); int lyear = ChinaData.GetYear(datetime);
int lmonth = ChinaData.GetMonth(datetime);
int lday = ChinaData.GetDayOfMonth(datetime); //获取闰月, 0 则表示没有闰月
int leapMonth = ChinaData.GetLeapMonth(lyear);
bool isleap = false;
if (leapMonth > 0)
{
if (leapMonth == lmonth)
{
//闰月
isleap = true;
lmonth--;
}
else if (lmonth > leapMonth)
{
lmonth--;
}
} //十天干
string[] tiangan = { "甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸" };
//十二地支
string[] dizhi = { "子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥" };
//十二生肖
string[] shengxiao = { "鼠", "牛", "虎", "免", "龙", "蛇", "马", "羊", "猴", "鸡", "狗", "猪" }; string ChinaYear = "";
if (lyear > 3)
{
int tgIndex = (lyear - 4) % 10;
int dzIndex = (lyear - 4) % 12; ChinaYear = string.Concat(tiangan[tgIndex], dizhi[dzIndex], "[", shengxiao[dzIndex], "]"); } string[] months = { "正", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二(腊)" }; string ChinaMonth = "";
if (lmonth < 13 && lmonth > 0)
{
ChinaMonth = months[lmonth - 1];
} string[] days1 = { "初", "十", "廿", "三" };
string[] days = { "一", "二", "三", "四", "五", "六", "七", "八", "九", "十" }; string ChinaDay = "";
if (lday > 0 && lday < 32)
{
if (lday != 20 && lday != 30)
{
ChinaDay = string.Concat(days1[(lday - 1) / 10], days[(lday - 1) % 10]);
}
else
{
ChinaDay = string.Concat(days[(lday - 1) / 10], days1[1]);
}
} return string.Concat(ChinaYear, "年", isleap ? "闰" : string.Empty, "\r\n农历 ", ChinaMonth, "月", ChinaDay);
//return "农历 " + ChinaMonth + "月" + ChinaDay;
}
C#根据当前日期获取星期和阴历日期的更多相关文章
- 根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期
根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期 >>>>>>>>>>>>>>>>&g ...
- Java 获取日期间的日期 & 根据日期获取星期
场景:根据起止日期获取中间的日期: 根据日期获取当前日期的星期 根据日期日期获取日期 /** * 获取日期间日期 * @param start * @param end * @return */ pr ...
- 【HANA系列】SAP HANA SQL获取当前日期加若干天后的日期
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL获取当前 ...
- C# DATETIME格式转换汇总 根据日期获取星期
原文:C# DATETIME格式转换汇总 根据日期获取星期 C# DateTime.Now.Year --2019(年) DateTime.Now.Month --9(月) DateTime.Now. ...
- Android 获取当前日期距离过期时间的日期差值的完整方法直接使用
/*** * 获取当前日期距离过期时间的日期差值 * @param endTime * @return */public String dateDiff(String endTime) { Strin ...
- JAVA使用LocalDate获取当前日期所在季度的开始日期和结束日期
需要使用jdk1.8及以上 /** * 获取当前日期所在季度的开始日期和结束日期 * 季度一年四季, 第一季度:1月-3月, 第二季度:4月-6月, 第三季度:7月-9月, 第四季度:10月-12月 ...
- JavaScript获取当前日期,昨天,今天日期以及任意天数间隔日期
<script language="JavaScript" type="text/javascript"> function GetDateStr( ...
- js获取当前日期,并计算几天后日期
获取当前的日期时间 格式“yyyy-MM-dd HH:MM:SS” function getNowFormatDate() { var date = new Date(); var seperator ...
- Js获取当前时间、日期
var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1 ...
随机推荐
- 【Todo】【读书笔记】Java多线程编程指南-设计模式篇
下了这本书<Java多线程编程指南-设计模式篇>, 还有另一本<JAVA多线程设计模式>,据说内容有重复,结合着看.
- Java异常与运行时异常,以及与线程的关系
具体可以看这篇文章:http://www.cnblogs.com/charlesblc/p/6171103.html 都写在里面了,为了避免更新不一致,这里就不再写一遍了.只给个链接. 注意Java和 ...
- DOS中文乱码解决
在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容.在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即 ...
- DRUID连接池的实用 配置详解
DRUID介绍 DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针 ...
- hiho_99_骑士问题
题目大意 给定国际象棋8x8棋盘上三个起始点,三个骑士分别从三个起始点开始移动(骑士只能走日字,且骑士从任意一点出发可以走遍整个棋盘).现要求三个骑士汇聚到棋盘上某个点,且使得骑士到达该点所移动的次数 ...
- iOS开发 字符串添加行间距
+ (CGFloat)achiveWidthAttrString:(NSAttributedString *)attrString withHeight:(CGFloat)height { CGRec ...
- 清理PC垃圾
@echo off pause echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %systemdrive ...
- javascript实现对象的继承的方式
在JavaScript将原型链作为实现继承的主要方法.基本原理是利用原型让一个subType引用superType的属性和方法 推荐链接 http://www.jb51.net/article/204 ...
- 查看Linux软件信息
查看系统发型版本 1. 对于linux系统而已,有成百上千个发行版.对于发行版的版本号查看方法 如以centos为例.输入lsb_release -a即可 该命令适用于所有的linux,包括Redha ...
- uva 1639--精度处理方法之取对数(uva 1639)
1639 - Candy Time limit: 3.000 seconds 1639 CandyLazyChild is a lazy child who likes candy very much ...