تاریخ هجری شمسی در دات نت
یکی از مشکلاتی که ما فارسی زبانان در زبان های برنامه نویسی داریم عدم وجود تاریخ هجری شمسی است که خوشبختانه مایکروسافت این مشکل را در مجموعه دات نت حل کرده است.
در دات نت کلاسی به نام PersianCleander وجود داره که به وسیله ی آن میتوانیم تاریخ شمسی رو محاسبه کنیم.
Imports System.Globalization
Public Class ConvertDate
Public Function ShamsiToMiladi(ByVal ShamsiDate As String) As String
Dim PDate As New PersianCalendar
Dim y, m, d As Integer
y = Mid(ShamsiDate, 1, 4)
m = Mid(ShamsiDate, 6, 2)
d = Mid(ShamsiDate, 9, 2)
Return Mid(PDate.ToDateTime(y, m, d, 1, 1, 1, 1, 1), 1, 11)
End Function
Public Function MiladiToShamsi(ByVal MiladiDate As String) As String
Dim PDate As New PersianCalendar
Dim miladi As Date = CDate(MiladiDate)
Dim y, m, d As String
y = PDate.GetYear(miladi)
m = PDate.GetMonth(miladi)
d = PDate.GetDayOfMonth(miladi)
Return y & "/" & m & "/" & d
End Function
End Class