'How convert Gregorian date to Persian date?
I want to convert a custom Gregorian date to Persian date in C#. For example, i have a string with this contents:
string GregorianDate = "Thursday, October 24, 2013";
Now i want to have:
string PersianDate = پنجشنبه 2 آبان 1392 ;
or
string PersianDate = 1392/08/02
Thanks
Solution 1:[1]
Use the PersianCalendar:
string GregorianDate = "Thursday, October 24, 2013";
DateTime d = DateTime.Parse(GregorianDate);
PersianCalendar pc = new PersianCalendar();
Console.WriteLine(string.Format("{0}/{1}/{2}", pc.GetYear(d), pc.GetMonth(d), pc.GetDayOfMonth(d)));
Solution 2:[2]
You can use PersianDateTime:
PM> Install-Package PersianDateTime
The Reference: PersianDateTime
You can use string.Split() if you need customization.
Solution 3:[3]
DateTime date = new DateTime(2013, 10, 24);
var calendar = new PersianCalendar();
var persianDate = new DateTime(calendar.GetYear(date), calendar.GetMonth(date), calendar.GetDayOfMonth(date));
var result = persianDate.ToString("yyyy MMM ddd", CultureInfo.GetCultureInfo("fa-Ir"));
Solution 4:[4]
Adding up to other answers, You can get the first one by using PersianDateTime:
var gregorianDate = "Thursday, October 24, 2013";
var date = DateTime.Parse(gregorianDate);
var persianDate = new PersianDateTime(date);
var result = persianDate.ToString("dddd d MMMM yyyy");
Solution 5:[5]
The fowlling code should work in .net 4+ :
DateTime date=Convert.ToDateTime("2020-07-12T19:30:00.000Z");
string persianDateString = date.ToString("yyyy/MM/dd",new CultureInfo("fa-IR"));
persianDateString value would be:
1399/04/23
Solution 6:[6]
In windows 10, using framework 4+:
Console.WriteLine(Convert.ToDateTime("1392/08/02",new CultureInfo("fa-IR")));
or
Console.WriteLine(DateTime.Parse("1392/08/02", new CultureInfo("fa-IR")));
Solution 7:[7]
You can convert a DateTime to Iran time using this method:
DateTime timeInIran = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTimeToConvert, "Iran Standard Time" );
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | |
| Solution 2 | |
| Solution 3 | Oleg |
| Solution 4 | Ali Seyedi |
| Solution 5 | MSS |
| Solution 6 | Amir |
| Solution 7 | AminSojoudi |
