Java日期工具类,Java时间工具类,Java时间格式化

时间:2021-10-24 18:51:26

Java日期工具类,Java时间工具类,Java时间格式化

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

©Copyright  蕃薯耀 2017年2月4日 15:03:27 星期六

http://www.cnblogs.com/fanshuyao/

附件下载见:http://fanshuyao.iteye.com/blog/2355386。

  1. public static final String DATE_TIME_PATTERN = "yyyy-MM-dd HH:mm:ss";
  2. public static final String DATE_PATTERN = "yyyy-MM-dd";
  3. /**
  4. * 日期相加减天数
  5. * @param date 如果为Null,则为当前时间
  6. * @param days 加减天数
  7. * @param includeTime 是否包括时分秒,true表示包含
  8. * @return
  9. * @throws ParseException
  10. */
  11. public static Date dateAdd(Date date, int days, boolean includeTime) throws ParseException{
  12. if(date == null){
  13. date = new Date();
  14. }
  15. if(!includeTime){
  16. SimpleDateFormat sdf = new SimpleDateFormat(StrUtils.DATE_PATTERN);
  17. date = sdf.parse(sdf.format(date));
  18. }
  19. Calendar cal = Calendar.getInstance();
  20. cal.setTime(date);
  21. cal.add(Calendar.DATE, days);
  22. return cal.getTime();
  23. }
  24. /**
  25. * 时间格式化成字符串
  26. * @param date Date
  27. * @param pattern 如果为空,则为yyyy-MM-dd
  28. * @return
  29. * @throws ParseException
  30. */
  31. public static String dateFormat(Date date, String pattern) throws ParseException{
  32. if(StrUtils.isBlank(pattern)){
  33. pattern = StrUtils.DATE_PATTERN;
  34. }
  35. SimpleDateFormat sdf = new SimpleDateFormat(pattern);
  36. return sdf.format(date);
  37. }
  38. /**
  39. * 字符串解析成时间对象
  40. * @param dateTimeString String
  41. * @param pattern 如果为空,则为yyyy-MM-dd
  42. * @return
  43. * @throws ParseException
  44. */
  45. public static Date dateParse(String dateTimeString, String pattern) throws ParseException{
  46. if(StrUtils.isBlank(pattern)){
  47. pattern = StrUtils.DATE_PATTERN;
  48. }
  49. SimpleDateFormat sdf = new SimpleDateFormat(pattern);
  50. return sdf.parse(dateTimeString);
  51. }
  52. /**
  53. * 将日期时间格式成只有日期的字符串
  54. * @param dateTime Date
  55. * @return
  56. * @throws ParseException
  57. */
  58. public static String dateTimeToDateString(Date dateTime) throws ParseException{
  59. String dateTimeString = StrUtils.dateFormat(dateTime, StrUtils.DATE_TIME_PATTERN);
  60. return dateTimeString.substring(0, 10);
  61. }
  62. /**
  63. * 当时、分、秒为00:00:00时,将日期时间格式成只有日期的字符串,
  64. * 当时、分、秒不为00:00:00时,直接返回
  65. * @param dateTime Date
  66. * @return
  67. * @throws ParseException
  68. */
  69. public static String dateTimeToDateStringIfTimeEndZero(Date dateTime) throws ParseException{
  70. String dateTimeString = StrUtils.dateFormat(dateTime, StrUtils.DATE_TIME_PATTERN);
  71. if(dateTimeString.endsWith("00:00:00")){
  72. return dateTimeString.substring(0, 10);
  73. }else{
  74. return dateTimeString;
  75. }
  76. }
  77. /**
  78. * 将日期时间格式成日期对象,和dateParse互用
  79. * @param dateTime Date
  80. * @return Date
  81. * @throws ParseException
  82. */
  83. public static Date dateTimeToDate(Date dateTime) throws ParseException{
  84. Calendar cal = Calendar.getInstance();
  85. cal.setTime(dateTime);
  86. cal.set(Calendar.HOUR_OF_DAY, 0);
  87. cal.set(Calendar.MINUTE, 0);
  88. cal.set(Calendar.SECOND, 0);
  89. cal.set(Calendar.MILLISECOND, 0);
  90. return cal.getTime();
  91. }

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

©Copyright  蕃薯耀 2017年2月4日 15:03:27 星期六

http://www.cnblogs.com/fanshuyao/