How can I convert Persian date to Gregorian date using System.globalization.PersianCalendar? Please note that I want to convert my Persian Date (e.g. today is 1391/04/07) and get the Gregorian Date result which will be 06/27/2012 in this case. I'm counting seconds for an answer ...
For example, January 1, 2022 fell in year 1400 in the Solar Hijri calendar, which corresponds to year 1443 in the Hijri calendar.
Piarom is one of the very popular kinds of semi-dried dates both in Iran and other countries. It is a black-brown narrow shaped fruit.
It's pretty simple actually:
// I'm assuming that 1391 is the year, 4 is the month and 7 is the day DateTime dt = new DateTime(1391, 4, 7, persianCalendar); // Now use DateTime, which is always in the Gregorian calendar
When you call the DateTime
constructor and pass in a Calendar
, it converts it for you - so dt.Year
would be 2012 in this case. If you want to go the other way, you need to construct the appropriate DateTime
then use Calendar.GetYear(DateTime)
etc.
Short but complete program:
using System; using System.Globalization; class Test { static void Main() { PersianCalendar pc = new PersianCalendar(); DateTime dt = new DateTime(1391, 4, 7, pc); Console.WriteLine(dt.ToString(CultureInfo.InvariantCulture)); } }
That prints 06/27/2012 00:00:00.
You can use this code to convert Persian Date to Gregorian.
// Persian Date var value = "1396/11/27"; // Convert to Miladi DateTime dt = DateTime.Parse(value, new CultureInfo("fa-IR")); // Get Utc Date var dt_utc = dt.ToUniversalTime();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With