最近有乙個專案要用到年份週期,用於資料統計圖表展示使用,當中用到年份週期,以及年份週期所在的日期範圍。當初設想通過已知資料來換算年份週期,經過搜尋資料發現通過資料庫sql語句來做,反而更加複雜。現在改變思路通過c#後台**來算出兩段日期範圍中年份週期,在依據年份週期所對應的日期範圍進行資料庫查詢進行統計。需要解決以下兩個點問題,
第一點:依據日期查詢所在年份的第幾周;
第二點:依據年份所在的週期計算出週期所在的日期範圍。
using system;
using system.collections.generic;
using system.globalization;
using system.linq;
using system.text;
using system.threading.tasks;
namespace consoleapplication6
周", weekofyear);
datetime startdate, lastdate;
for (int i = 1; i <= 53; i++)
周", i);
console.writeline(startdate);
console.writeline(lastdate);
}console.readline();
}public static bool getdaysofweeks(int year, int index, out datetime first, out datetime last)
if (index < 1 || index > 53)
datetime startday = new datetime(year, 1, 1); //該年第一天
datetime endday = new datetime(year + 1, 1, 1).addmilliseconds(-1);
int dayofweek = 0;
if (convert.toint32(startday.daycduadbzofweek.tostring("d")) > 0)
dayofweek = convert.toint32(startday.dayofweek.tostring("d")); //該年第程式設計客棧一天為星期幾
if (dayofweek == 0)
if (index == 1)
else
}else
}if (first > endday) //startdayofweeks不在該年範圍內
rewww.cppcns.comturn true;}}}
執行結果
總結本文位址:
c 獲取當前年的週數,當前月的天數
獲取當前年的週數 獲得今年有幾周 public intgetweekofyear intyear 獲取當前月的天數 第一種 datetime dt new datetime 2007,1 1 在.net中內部處理是減去 1後的月份得到當前月的天數 實際上這種方式是算出他們的差 例如 當前月是2007...
C 獲取當前應用程式所在的路徑
1.system.diagnostics.process.getcurrentprocess mainmodule.filename 獲取模組的完整路徑,可獲得當前執行的exe的檔名。2.system.environment.currentdirectory 獲取和設定當前目錄 該程序從中啟動的目錄...
c 獲取當前執行程式所在的目錄
c 獲取專案程式及執行路徑的方 2.c winform用 d system.threading.thread.getdomain basedirectory 獲取當前應用程式所在目錄的路徑,最後包含 e environment.currentdirectory 獲取當前應用程式的路徑,最後不包含 f...