java如何获取指定月的上月最后一天,传入一个月份,获得传入的这个月的上一个月的最后一天,求解

java如何获取指定月的上月最后一天,传入一个月份,获得传入的这个月的上一个月的最后一天,求解,第1张

/

获得上个月月份

/

public static String getLastMouth(){

SimpleDateFormat sdf=new SimpleDateFormat("yyyyMM");

Calendar calendar=CalendargetInstance();

//calendarset(2010,5,0);

calendarsetTime(new Date());

//calendaradd(CalendarMONTH, -1);

//取得上一个月时间

calendarset(CalendarMONTH,calendarget(CalendarMONTH)-1);

String lastMonth= sdfformat(calendargetTime());

return lastMonth;

}

最好一天自己百度下

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Calendar calendar = CalendargetInstance();

Date now = calendargetTime();

Systemoutprintln(simpleDateFormatformat(now));

calendarset(CalendarMONTH, calendarget(CalendarMONTH) - 1);

calendarset(CalendarDATE, calendargetMaximum(CalendarDATE));

calendarset(CalendarHOUR, -12);

calendarset(CalendarMINUTE, 0);

calendarset(CalendarSECOND, 0);

Date date = calendargetTime();

Systemoutprintln(simpleDateFormatformat(date));

输出:

2014-02-20 19:40:40

2014-01-31 00:00:00

Calendar c = CalendargetInstance(); 得到上一个月份cget(CalendarMONTH)-1;(要加判断条件 if (CalendarMONTH==1) return 12;else return cget(CalendarMONTH)-1) )

是不是bcd输出的就是当前月的前一个月的数据,所以日期要是比这个月早一个月?如过是的话,在bcp之前加入下面这些批处理就好了,当然 bcd 输出的那一行好改相应的变量哦,注意看了~

set /a "y=%date:~0,4%"

if "%date:~5,1%"=="0" (set /a "m=%date:~6,1%") else (set /a "m=%date:~5,2%")

if %m%==1 ( set /a "m=12" & set /a "y=%y%-1") else (set /a "m=%m%-1")

bcp masterdbofm_report_month out "e:\fm_report\%y%-%m%_hwbbxmtxt" -c -t "_+|" -r "\n" -U"sa" -P"pwd" -S"sdfad-1mv453x"

以上就是关于java如何获取指定月的上月最后一天,传入一个月份,获得传入的这个月的上一个月的最后一天,求解全部的内容,包括:java如何获取指定月的上月最后一天,传入一个月份,获得传入的这个月的上一个月的最后一天,求解、java 代码如何获取当前时间的上一个月的月末时间..、java 怎样根据选择的日期月份得到其上一个日期月份等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9730410.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存