VB.NET公元年份转干支(支持公元前)
2016-08-14 14:28
281 查看
贴在这里。
Function WesternYearToGanZhi(ByVal WesternYear As Integer) As String Dim tempGan, tempZhi As Byte '下面的代码用来计算下标 If WesternYear >= 4 Then '如果年份在公元4年及以后,是这样算滴。 tempGan = (WesternYear - 4) Mod 10 tempZhi = (WesternYear - 4) Mod 12 Elseif WesternYear = 3 Then Return "癸亥" : Exit Function ElseIf WesternYear = 2 Then '公元2年,不用算了,是壬戌年。 Return "壬戌" : Exit Function ElseIf WesternYear = 1 Then '公元元年,是辛酉年。 Return "辛酉" : Exit Function ElseIf WesternYear < 0 Then '如果年份是公元前,这个略复杂,不信去验证一下。 tempGan = 9 - ((2-WesternYear) Mod 10) tempZhi = 11 - ((2-WesternYear) Mod 12) Else Throw New Exception("There was no year 0!") '抛出异常,因为没有公元0年。 End If '下标算好了,祭出数组。甲(子)对应的下标为0,癸(亥)对应的下标为9(11)。 Dim Gans As String() = {"甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸"} Dim Zhis As String() = {"子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"} Return Gans(tempGan) & Zhis(tempZhi) '天干在前,地支在后,并起来。 End Function
相关文章推荐
- 一段VB.NET代码,生成邮件,发送邮件,支持SMTP验证用户名密码.
- 一个简单的动态编译器,支持C#和VB.NET。当你想测试一些简单的代码的时候可以使用。
- vb.net 数组的反序列化不支持类型 json
- VB.net 程序需连接Oralce数据库查询 日志提示“数据类型不被支持”
- 【VB.NET】利用 ZXing.Net 生成二维码(支持自定义LOGO)
- 【VB.NET】快速哈希表(MD5、SHA、CRC32)支持输出格式文本
- 干支、生肖查询器 v3.0(增加公元前年份的查询)
- VB.NET 编程元素支持更改总结
- VB.NET导出excel并支持中文文件名 中文编码
- 可逆加密,支持中文,支持密钥,加密后的密文每次都不同,且可随意改变算法 组件之Vb.Net版本
- 代码统计工具(支持C#,VB.NET)
- 发布NBearLite v1.0.0 beta - 全面支持SqlServer,Oracle,MySql,PostgreSql数据库存储过程调用代码生成(C#/VB.NET)
- C#或VB.NET判断指定的年份是否为闰年
- 使用VB.Net写一个简单的数据访问层:T-Sql函数的支持。
- 发布NBearLite v1.0.0 beta - 全面支持SqlServer,Oracle,MySql,PostgreSql数据库存储过程调用代码生成(C#/VB.NET)
- 支持VB.NET的重构工具
- 代码统计工具(支持C#,VB.NET)
- 软件系统多语言实现方案(重点介绍VB.net利用微软的国际化支持实现软件系统多语言)
- 【VB.NET】快速哈希表(MD5、SHA、CRC32)支持输出格式文本
- VB.NET写支持UAC功能的程序