2015-07-21 79 views
0

我有一個日期範圍(日期和月數),我想要統計該日期範圍內Januarys的數量。在日期範圍內有多少Januarys

例如,結束於5/2015並且回溯20個月有2個Januarys:1/20151/2014

+6

請首先作出努力。即使您的代碼無法正常工作,請分享您所擁有的內容,並解釋您卡在哪裏。 –

回答

1
int currentMonth = 5; 
int monthsBack = 20; 

int numberOfJans = (int) Math.Floor((monthsBack - currentMonth)/12.0) + 1; 

這是數學,而不是C#。樣品之間

0

計數月

 DateTime dateEnd = Convert.ToDateTime("01/08/2015"); 
     int monthsBack = 24; 

     DateTime dateStart = dateEnd.AddMonths(-monthsBack); 

     int janCount = 0; 
     for (DateTime dd = dateStart; dd < dateEnd; dd = dd.AddMonths(1)) 
     { 
      if (dd.Month == 1) //if jan 
       janCount += 1; 
     } 

     MessageBox.Show(dateStart.ToShortDateString() +" to "+ dateEnd.ToShortDateString() 
         + Environment.NewLine +Environment.NewLine + 
         janCount.ToString() 
         ); 
+0

沒有必要在你的if語句中使用ToString()。 dd.Month == 1就足夠了。 – Shar1er80

+0

@ Shar1er80感謝指點,很困 –