Java获取各种日期的函数(方法).docx_第1页
Java获取各种日期的函数(方法).docx_第2页
Java获取各种日期的函数(方法).docx_第3页
Java获取各种日期的函数(方法).docx_第4页
Java获取各种日期的函数(方法).docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java日期操作(月末、周末等的日期操作)2009-11-06 13:53:59|分类: java基础知识 |标签: |字号大中小订阅 import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; 5 6/* */* 7 * 8 * author zzk 9 *10 */11public class DateUtil 1213 /* */*14 * 取得某天相加(减)後的那一天15 *16 * param date17 * param num(可正可负)18 * return19 */20 public static Date getAnotherDate(Date date, int num) 21 Calendar c = Calendar.getInstance();22 c.setTime(date);23 c.add(Calendar.DAY_OF_YEAR, num);24 return c.getTime();25 2627 /* */*28 * 取得某月的的最后一天29 *30 * param year31 * param month32 * return33 */34 public static Date getLastDayOfMonth(int year, int month) 35 Calendar cal = Calendar.getInstance();36 cal.set(Calendar.YEAR, year);/ 年37 cal.set(Calendar.MONTH, month - 1);/ 月,因为Calendar里的月是从0开始,所以要减138 cal.set(Calendar.DATE, 1);/ 日,设为一号39 cal.add(Calendar.MONTH, 1);/ 月份加一,得到下个月的一号40 cal.add(Calendar.DATE, -1);/ 下一个月减一为本月最后一天41 return cal.getTime();/ 获得月末是几号42 /这个方法是我自己写的,也是获取月末的 public static Date getLastDayOfMonth(int year, int month) Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, year); cal.set(Calendar.MONTH, month);/我的版本是jdk1.6月不用-1 cal.set(Calendar.DATE, 0); return cal.getTime(); 44 /* */*45 * 取得某天是一年中的多少周46 *47 * param date48 * return49 */50 public static int getWeekOfYear(Date date) 51 Calendar c = new GregorianCalendar();52 c.setFirstDayOfWeek(Calendar.MONDAY);53 c.setMinimalDaysInFirstWeek(7);54 c.setTime(date);55 return c.get(Calendar.WEEK_OF_YEAR);56 5758 /* */*59 * 取得某天所在周的第一天60 *61 * param date62 * return63 */64 public static Date getFirstDayOfWeek(Date date) 65 Calendar c = new GregorianCalendar();66 c.setFirstDayOfWeek(Calendar.MONDAY);67 c.setTime(date);68 c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek();69 return c.getTime();70 7172 /* */*73 * 取得某天所在周的最后一天74 *75 * param date76 * return77 */78 public static Date getLastDayOfWeek(Date date) 79 Calendar c = new GregorianCalendar();80 c.setFirstDayOfWeek(Calendar.MONDAY);81 c.setTime(date);82 c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek() + 6);83 return c.getTime();84 8586 /* */*87 * 取得某一年共有多少周88 *89 * param year90 * return91 */92 public static int getMaxWeekNumOfYear(int year) 93 Calendar c = new GregorianCalendar();94 c.set(year, Calendar.DECEMBER, 31, 23, 59, 59);95 return getWeekOfYear(c.getTime();96 9798 /* */*99 * 取得某年某周的第一天100 * 对于交叉:2008-12-29到2009-01-04属于2008年的最后一周,2009-01-05为2009年第一周的第一天101 * param year102 * param week103 * return104 */105 public static Date getFirstDayOfWeek(int year, int week) 106 Calendar calFirst = Calendar.getInstance();107 calFirst.set(year, 0, 7);108 Date firstDate = getFirstDayOfWeek(calFirst.getTime();109110 Calendar firstDateCal = Calendar.getInstance();111 firstDateCal.setTime(firstDate);112113 Calendar c = new GregorianCalendar();114 c.set(Calendar.YEAR, year);115 c.set(Calendar.MONTH, Calendar.JANUARY);116 c.set(Calendar.DATE, firstDateCal.get(Calendar.DATE);117118 Calendar cal = (GregorianCalendar) c.clone();119 cal.add(Calendar.DATE, (week - 1) * 7);120 firstDate = getFirstDayOfWeek(cal.getTime();121122 return firstDate;123 124125 /* */*126 * 取得某年某周的最后一天127 * 对于交叉:2008-12-29到2009-01-04属于2008年的最后一周, 2009-01-04为 2008年最后一周的最后一天128 * param year129 * param week130 * return131 */132 public static Date getLastDayOfWeek(int year, int week) 133 Calendar calLast = Calendar.getInstance();134 calLast.set(year, 0, 7);135 Date firstDate = getLastDayOfWeek(calLast.getTime();136137 Calendar firstDateCal = Calendar.getInstance();138 firstDateCal.setTime(firstDate);139140 Calendar c = new GregorianCalendar();141 c.set(Calendar.YEAR, year);142 c.set(Calendar.MONTH, Calendar.JANUARY);143 c.set(Calendar.DATE, firstDateCal.get(Calendar.DATE);144145 Calendar cal = (GregorianCalendar) c.clone();146 cal.add(Calendar.DATE, (week - 1) * 7);147 Date lastDate = getLastDayOfWeek(cal.getTime();148149 return lastDate;150 151152 /* *获取当前

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论