I have this code:
DateTime dtAnyDateHebrew = new DateTime(5767, 1, 1, new System.Globalization.HebrewCalendar());
how can I get the numeric Hebrew date of today?
Meaning:
For example I want to find out if a specific H开发者_开发问答ebrew month falls in this month, so I have to send the hebrew month to the function - with today's day of month and year, so that I'll be able to check if dtAnyDateHebrew is equal to Today, bigger than. etc.
finally I need to get - Today's hebrew day of month, Today's hebrew month, Today's hebrew year, as int (of course).
Can someone help me?
Use DateTime.Today
and converted it using one of the following ex. methods:
/// <summary>
/// Converts a gregorian date to its hebrew date string representation,
/// using custom DateTime format string.
/// </summary>
/// <param name="value">The <see cref="DateTime"/> value to convert.</param>
/// <param name="format">A standard or custom date-time format string.</param>
public static string ToJewishDateString(this DateTime value, string format)
{
var ci = CultureInfo.CreateSpecificCulture("he-IL");
ci.DateTimeFormat.Calendar = new HebrewCalendar();
return value.ToString(format, ci);
}
/// <summary>
/// Converts a gregorian date to its hebrew date string representation,
/// using DateTime format options.
/// </summary>
/// <param name="value">The <see cref="DateTime"/> value to convert.</param>
/// <param name="dayOfWeek">Specifies whether the return string should
/// include the day of week.</param>
public static string ToJewishDateString(this DateTime value, bool dayOfWeek)
{
var format = dayOfWeek ? "D" : "d";
return value.ToJewishDateString(format);
}
Well, I found what I need:
DateTime Today = DateTime.Today;
Calendar HebCal = new HebrewCalendar();
int curYear = HebCal.GetYear(Today); //current numeric hebrew year
int curMonth = HebCal.GetMonth(Today); //current numeric hebrew month
etc..
It's that simple.
Thanks to all of you.
This blog entry shows how.
public static string GetHebrewJewishDateString(DateTime anyDate, bool addDayOfWeek) {
System.Text.StringBuilder hebrewFormatedString = new System.Text.StringBuilder();
// Create the hebrew culture to use hebrew (Jewish) calendar
CultureInfo jewishCulture = CultureInfo.CreateSpecificCulture("he-IL");
jewishCulture.DateTimeFormat.Calendar = new HebrewCalendar();
#region Format the date into a Jewish format
if (addDayOfWeek)
{
// Day of the week in the format " "
hebrewFormatedString.Append(anyDate.ToString("dddd", jewishCulture) + " ");
}
// Day of the month in the format "'"
hebrewFormatedString.Append(anyDate.ToString("dd", jewishCulture) + " ");
// Month and year in the format " "
hebrewFormatedString.Append("" + anyDate.ToString("y", jewishCulture));
#endregion
return hebrewFormatedString.ToString();
}
精彩评论