以今天为例
DateTimeTodayDateAddMonths(1)AddDays(-1 (DateTimeTodayDay)
授人以渔。。。剩下调整格式那点事自己去弄吧
你好,以下是获取年,季度,天日期的所有方式:DECLARE
@dt
datetime
SET
@dt=GETDATE()
DECLARE
@number
int
SET
@number=3
--1.指定日期该年的第一天或最后一天
--A
年的第一天
SELECT
CONVERT(char(5),@dt,120)+'1-1'
--B
年的最后一天
SELECT
CONVERT(char(5),@dt,120)+'12-31'
--2.指定日期所在季度的第一天或最后一天
--A
季度的第一天
SELECT
CONVERT(datetime,
CONVERT(char(8),
DATEADD(Month,
DATEPART(Quarter,@dt)3-Month(@dt)-2,
@dt),
120)+'1')
--B
季度的最后一天(CASE判断法)
SELECT
CONVERT(datetime,
CONVERT(char(8),
DATEADD(Month,
DATEPART(Quarter,@dt)3-Month(@dt),
@dt),
120)
+CASE
WHEN
DATEPART(Quarter,@dt)
in(1,4)
THEN
'31'ELSE
'30'
END)
--C
季度的最后一天(直接推算法)
SELECT
DATEADD(Day,-1,
CONVERT(char(8),
DATEADD(Month,
1+DATEPART(Quarter,@dt)3-Month(@dt),
@dt),
120)+'1')
--3.指定日期所在月份的第一天或最后一天
--A
月的第一天
SELECT
CONVERT(datetime,CONVERT(char(8),@dt,120)+'1')
--B
月的最后一天
SELECT
DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+'1')
--C
月的最后一天(容易使用的错误方法)
SELECT
DATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))
--4.指定日期所在周的任意一天
SELECT
DATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)
--5.指定日期所在周的任意星期几
--A
星期天做为一周的第1天
SELECT
DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)
--B
星期一做为一周的第1天
SELECT
DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)
代码如上,原理是,设定指定月份的下个月第一天,减去1毫秒,就是上个月最后一天。
测试输出结果,以下结果分别是29、28:
js如何获得今年最后一天的日期:
<script type="text/javascript">
function getYearLastDay(){
return new Date()getFullYear()+"年12月31号";
}
alert(getYearLastDay());
</script>
转自: >
import javatextSimpleDateFormat;
import javautilCalendar;
public class Test {
/
获取某月的最后一天
@Title:getLastDayOfMonth
@Description:
@param:@param year
@param:@param month
@param:@return
@return:String
@throws
/
public static String getLastDayOfMonth(int year,int month) {
Calendar cal = CalendargetInstance();
//设置年份
calset(CalendarYEAR,year);
//设置月份
calset(CalendarMONTH, month-1);
//获取某月最大天数
int lastDay = calgetActualMaximum(CalendarDAY_OF_MONTH);
//设置日历中月份的最大天数
calset(CalendarDAY_OF_MONTH, lastDay);
//格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String lastDayOfMonth = sdfformat(calgetTime());
return lastDayOfMonth;
}
/
获取这个月的最后一天
@Title:getLastDayOfCurrentMonth
@Description:
@param:@param year
@param:@param month
@param:@return
@return:String
@throws
/
public static String getLastDayOfCurrentMonth() {
Calendar cal = CalendargetInstance();
//获取某月最大天数
int lastDay = calgetActualMinimum(CalendarDAY_OF_MONTH);
//设置日历中月份的最大天数
calset(CalendarDAY_OF_MONTH, lastDay);
//格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String lastDayOfMonth = sdfformat(calgetTime());
return lastDayOfMonth;
}
/
获取某月的第一天
@Title:getLastDayOfMonth
@Description:
@param:@param year
@param:@param month
@param:@return
@return:String
@throws
/
public static String getFirstDayOfMonth(int year,int month) {
Calendar cal = CalendargetInstance();
//设置年份
calset(CalendarYEAR,year);
//设置月份
calset(CalendarMONTH, month-1);
//获取某月最大天数
int lastDay = calgetActualMinimum(CalendarDAY_OF_MONTH);
//设置日历中月份的最大天数
calset(CalendarDAY_OF_MONTH, lastDay);
//格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String lastDayOfMonth = sdfformat(calgetTime());
return lastDayOfMonth;
}
/
获取这个月的第一天
@Title:getFirstDayOfCurrentMonth
@Description:
@param:@param year
@param:@param month
@param:@return
@return:String
@throws
/
public static String getFirstDayOfCurrentMonth() {
Calendar cal = CalendargetInstance();
//获取某月最大天数
int lastDay = calgetActualMaximum(CalendarDAY_OF_MONTH);
//设置日历中月份的最大天数
calset(CalendarDAY_OF_MONTH, lastDay);
//格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String lastDayOfMonth = sdfformat(calgetTime());
return lastDayOfMonth;
}
/
@Title:main
@Description:
@param:@param args
@return: void
@throws
/
public static void main(String[] args)
{
String lastDay = getLastDayOfMonth(2014,2);
Systemoutprintln("获取2014年2月的最后一天:" + lastDay);
String currentLDay= getLastDayOfCurrentMonth();
Systemoutprintln("获取本月的最后一天:" + currentLDay);
String firstDay = getFirstDayOfMonth(2014,2);
Systemoutprintln("获取2014年2月的第一天:" + firstDay);
String currentFDay= getFirstDayOfCurrentMonth();
Systemoutprintln("获取本月的第一天:" + currentFDay);
}
}
传上来的代码真难看,不知道怎么发文件,我给你截一张图
getLeastMaximum
public abstract int getLeastMaximum(int field)
返回此 Calendar 实例给定日历字段的最低的最大值。最低的最大值被定义为 getActualMaximum(int)
方法为任何可能时间值返回的最小值。最低的最大值取决于日历系统实例的特定参数。例如,对于格里高利历系统,Calendar 将为
DAY_OF_MONTH 字段返回 28,因为第 28 天是该日历最短那个月的最后一天,即普通年的二月。
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//获取前月的第一天
Calendar cal_1=CalendargetInstance();//获取当前日期
cal_1add(CalendarMONTH, -1);
cal_1set(CalendarDAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天
firstDay = formatformat(cal_1getTime());
Systemoutprintln("-----1------firstDay:"+firstDay);
//获取前月的最后一天
Calendar cale = CalendargetInstance();
caleset(CalendarDAY_OF_MONTH,0);//设置为1号,当前日期既为本月第一天
lastDay = formatformat(calegetTime());
Systemoutprintln("-----2------lastDay:"+lastDay);
//获取当前月第一天:
Calendar c = CalendargetInstance();
cadd(CalendarMONTH, 0);
cset(CalendarDAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天
String first = formatformat(cgetTime());
Systemoutprintln("===============first:"+first);
//获取当前月最后一天
Calendar ca = CalendargetInstance();
caset(CalendarDAY_OF_MONTH, cagetActualMaximum(CalendarDAY_OF_MONTH));
String last = formatformat(cagetTime());
Systemoutprintln("===============last:"+last);
以上就是关于c# datetime 怎么样获取 某月的最后一天的日期全部的内容,包括:c# datetime 怎么样获取 某月的最后一天的日期、SQL语句 如何取得指定月份的最后一天的日期、js代码实现,如何获取当前月份的最后一天等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)