1. 程式人生 > >C#根據當前時間獲取,本週,本月,本季度等時間段

C#根據當前時間獲取,本週,本月,本季度等時間段

 【轉載】http://www.cnblogs.com/jonycaimarcia/archive/2012/12/12/2814735.html     DateTime dt = DateTime.Now;  //當前時間  
       
    DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d")));  //本週週一  
    DateTime endWeek = startWeek.AddDays(6);  //本週週日  
       
    DateTime startMonth = dt.AddDays(1 - dt.Day);  //本月月初  
    DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);  //本月月末  
    //DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1);  //本月月末  
       
    DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day);  //本季度初  
    DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1);  //本季度末  
       
    DateTime startYear = new DateTime(dt.Year, 1, 1);  //本年年初  
    DateTime endYear = new DateTime(dt.Year, 12, 31);  //本年年末  
       
    至於昨天、明天、上週、上月、上季度、上年度等等,只要AddDays()、AddMonths()、AddYears()這幾種方法組合一下就可以了。  
    C#中datetime的使用  
    //如果你還不明白,再看一下中文顯示星期幾的方法就應該懂了  
    //由於DayOfWeek返回的是數字的星期幾,我們要把它轉換成漢字方便我們閱讀,有些人可能會用switch來一個一個地對照,其實不用那麼麻煩的  
    string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };  
    string week = Day[Convert.ToInt32(DateTime.Now.DayOfWeek.ToString("d"))].ToString();  
       
    //上週,同理,一個周是7天,上週就是本週再減去7天,下週也是一樣  
    DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7);        //上週一  
    DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7).AddDays(6);     //上週末(星期日)  
    //下週  
    DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7);        //下週一  
    DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7).AddDays(6);      //下週末  
    //本月,很多人都會說本月的第一天嘛肯定是1號,最後一天就是下個月一號再減一天。當然這是對的  
    //一般的寫法  
    DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第一天  
    DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最後一天  
       
    //巧用C#裡ToString的字元格式化更簡便  
    DateTime.Now.ToString("yyyy-MM-01");  
    DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();  
       
    //上個月,減去一個月份  
    DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();  
    DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();  
    //下個月,加去一個月份  
    DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();  
    DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();  
    //7天后  
    DateTime.Now.Date.ToShortDateString();  
    DateTime.Now.AddDays(7).ToShortDateString();  
    //7天前  
    DateTime.Now.AddDays(-7).ToShortDateString();  
    DateTime.Now.Date.ToShortDateString();  
       
    //本年度,用ToString的字元格式化我們也很容易地算出本年度的第一天和最後一天  
    DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();  
    DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();  
    //上年度,不用再解釋了吧  
    DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();  
    DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();  
    //下年度  
    DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();  
    DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();  
       
    //本季度,很多人都會覺得這裡難點,需要寫個長長的過程來判斷。其實不用的,我們都知道一年四個季度,一個季度三個月  
    //首先我們先把日期推到本季度第一個月,然後這個月的第一天就是本季度的第一天了  
    DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);  
    //同理,本季度的最後一天就是下季度的第一天減一  
    DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();  
    //下季度,相信你們都知道了。。。。收工  
    DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");  
    DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();  
    //上季度  
    DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)). AddDays(1 - DateTime.Now);  
    DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day).AddDays(-1).ToShortDateString();

相關推薦

C#根據當前時間獲取本週本月季度時間段

 【轉載】http://www.cnblogs.com/jonycaimarcia/archive/2012/12/12/2814735.html     DateTime dt = DateTime.Now;  //當前時間               DateTime

c# 根據當前時間獲取,本週,本月,季度,月初,月末,各個時間段

DateTime dt = DateTime.Now; //當前時間 DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") //24小時制 DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")

c# 根據當前時間獲取,周,本月,季度,月初,月末,各個時間段

ble pre 上月 new 。。 datetime test addm [] DateTime dt = DateTime.Now; //當前時間 DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") //24小時制 Date

Oracle根據當前時間獲取最近5年最近6個月最近30天的時間

根據當前時間獲取最近5年時間:(yyyy) SELECT to_char(SYSDATE,'YYYY') - LEVEL + 1 as "xAxisValue"  FROM dualCONNECT BY LEVEL <= 5ORDER BY to_char(SYSDA

C# 根據當前時間計算周、月、季度、年的換算及注意事項

public static void ShowTime() { /* * 根據當前時間進行時間段轉換: * 本週、下週、上週 *

根據當前時間獲取當前周的開始、結束時間(週一到週日)

專案開發中,碰見每週更新三道題的需求,不能多於三道題 package test; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; impor

根據當前時間獲取上一個月的時間

ont ini con edge lang har charset scale wid <!DOCTYPE html> <html lang="zh"> <head> <meta charset=&quo

Java獲取當天、本週本月季度、本年 開始及結束時間

package com.zhaochao.utils; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DataUill { public static

JS日期轉換格式 和 JS 獲取 今日、昨日、本週本月季度、本年、上月、上週、上季度、去年

// 對Date的擴充套件,將 Date 轉化為指定格式的String // 月(M)、日(d)、小時(h)、分(m)、秒(s)、季度(q) 可以用 1-2 個佔位符, // 年(y)可以用 1-4 個佔位符,毫秒(S)只能用 1 個佔位符(是 1-3 位的數字) // 例子: // (new D

php 獲取時間段 今天昨天本週上週本月上月季度本年去年

/**獲取時間段 * @param $name * @param $param */ function gettimestamp($name = 'today',$param = ''){ switch ($name){ case 'today'

JS 獲取 本週本月季度、本年、上月、上週、上季度、去年

/** * 日期範圍工具類 */ var dateRangeUtil = (function () { /*** * 獲得當前時間 */ this.getCurrentDate = function () { return ne

用php獲取本週,上週,本月,上月,季度日期的程式碼

echo date("Ymd",strtotime("now")), "\n"; echo date("Ymd",strtotime("-1 week Monday")), "\n"; echo date("Ymd",strtotime("-1 week Sunday"

oracle獲取本週本月季度年度的第一天和最後一天

--本週select  trunc(sysdate,'d')+1 from dual;--下週一select  trunc(sysdate,'d')+7from dual; --本月select trunc(sysdate,'mm') from dual;select  last_day(trunc(sy

Android 昨日 本週本月季度 年度所取得範圍

由於專案中需要一個日期範圍,因此寫下了昨日 本週內 本月內 本季度 本年度所取得範圍, 所有的一切是基於今天的日期。 //獲取當天的時間 public static String getCurrentDate() { Calendar

設定身份證號與性別、生日聯動根據當前時間獲取年齡

1、設定身份證號與性別、生日聯動  $("#sfz").change(function(){                 //設定身份證號生日聯動  &

c#獲取當前時間本週本月季、本年的開始和結束時間

using System; public enum DataTimeType { Week, Month, Season, Year } public class DataTimeManager { /// <summary> ///

JS根據傳入時間當前時間相比得出幾天前幾小時前幾分鐘或者是剛剛

JS根據傳入時間,與當前時間相比得出幾天前,幾小時前,幾分鐘或者是剛剛 //時間函式date為時間戳 function formatDate(date) { var newTime = Date.parse(new Date());//獲得當前時間,轉化時間戳 var

Windows系統bat根據當前時間生成檔名稱

rem 根據當前日期獲取,年月日串 set yyyy=%date:~,4% set mm=%date:~5,2% set day=%date:~8,2% set "YYYYmmdd=%yyyy%%mm%%day%" rem 把年月日串中的空格替換為0 set "YYYYm

JS獲取當前時間(YYYY-MM-DD )element顯示預設當前時間顯示預設昨天顯示預設上個月

進來的隨便看看,或許有幫助 vue+element-ui   datepicker 設定預設日期 用的框架是vue+element-ui ,以下是時間控制元件 <el-form-item label="月份"> <el-date-picker v-m

js 獲取每月有幾周當前時間在當月第幾周今天周幾方法

因產品需要展示相關時間,現總結如下方法:以供日後參考: 獲取每月有幾周 // year:年 month:月 day:日 getWeeks(year, month, day) { const d = new Date() // 該月