Click here to Skip to main content
15,884,472 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Here I want to print week number and month number but week should start from Wednesday and not from Sunday .

e.g. week must start from (1-Jan-14 wed) it should show week no : 1 and on (8-jan-14 wed) it should show week no : 2., but I am not getting that .

My code is given below .
C#
DayOfWeek firstDayOfWeek = DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek;
CalendarWeekRule weekRule = DateTimeFormatInfo.CurrentInfo.CalendarWeekRule;
DateTime date = DateTime.Now;
for (int i = 0; i <= 1; i++) {
  DateTime currentDate = date.AddDays(i);
  Label1.Text = " W " + CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(
    currentDate, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Wednesday
  ) + " M " + CultureInfo.CurrentCulture.Calendar.GetMonth(currentDate);


[Edit member="Tadit"]
Added pre tags.
[/Edit]
Posted
v2

hi,

Please find the below code,
C#
DateTime firstdate = DateTime.Now.AddDays(-DateTime.Now.Day + 1).AddMonths(-DateTime.Now.Month + 1);

Label1.Text = Convert.ToString((DateTime.Now - firstdate).TotalDays % 7 == 0 ? ((DateTime.Now - firstdate).TotalDays / 7) : Convert.ToInt32((DateTime.Now - firstdate).TotalDays / 7)+1);

hopes this will work for you....


[Edit member="Tadit"]
Added pre tags.
[/Edit]
 
Share this answer
 
v3
Just to get the week number you can use the following code

C#
DateTime initialDate = new DateTime(2014, 1, 1);
TimeSpan dateDiff = DateTime.Now - initialDate;
int weekNumber = ((int)dateDiff.TotalDays / 7) + 1;
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900