package com.ydc.ln.commons.utils; import java.text.ParsePosition; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * * @ClassName DateUtils * @Description TODO * @author ydc * @date 下午11:43:01 2013-3-11 * @version V1.0 */ public class DateUtils { /** * 静态常量 */ public static final String TIME_PATTON_DEFAULT = "yyyy-MM-dd HH:mm:ss"; public static final String DATE_PATTON_DEFAULT = "yyyy-MM-dd"; /** * 任意格式日期字符串-->java.util.Date * * @Title: str2date * @param dateStr * @param patton * @return Date * @throws */ public static Date str2date(String dateStr, String patton) { if (dateStr == null || "".equals(dateStr)) { return null; } if (patton == null || "".equals(patton)) { patton = TIME_PATTON_DEFAULT; } return getSimpleDateFormat(patton).parse(dateStr, new ParsePosition(0)); } /** * java.util.Date-->任意格式日期字符串 * * @Title: date2str * @param date * @param patton * @return String * @throws */ public static String date2str(Date date, String patton) { if (date == null) { return null; } if (patton == null || "".equals(patton)) { patton = TIME_PATTON_DEFAULT; } return getSimpleDateFormat(patton).format(date); } /** * 任意格式日期字符串-->任意格式日期字符串 * * @Title: str2str * @param dateStr * @param srcPatton * @param destPatton * @return String * @throws */ public static String str2str(String dateStr, String srcPatton, String destPatton) { Date date = DateUtils.str2date(dateStr, srcPatton); return DateUtils.date2str(date, destPatton); } /** * 获取当前时间 * * @Title: getSysDate * @return Date * @throws */ public static Date getSysDate() { return new Date(System.currentTimeMillis()); } /** * 获取指定输出格式的SimpleDateFormat * * @Title: getSimpleDateFormat * @param patton * @return SimpleDateFormat * @throws */ public static SimpleDateFormat getSimpleDateFormat(String patton) { SimpleDateFormat sdf; if (patton == null) { patton = TIME_PATTON_DEFAULT; } sdf = new SimpleDateFormat(patton); return sdf; } /** * 基于日期类型的日期比较 * * @Title: compareDate * @param date1 * @param date2 * @return int * @throws */ public static int compareDate(Date date1, Date date2) { // 也可使用java.util.Date.after(java.util.Date)来比较 int result = date1.compareTo(date2); return result; } /** * 基于字符串类型的日期比较 * * @Title: compareDateStr * @param dateStr1 * @param dateStr2 * @param patton * @return int * @throws */ public static int compareDateStr(String dateStr1, String dateStr2, String patton) { Date date1 = DateUtils.str2date(dateStr1, patton); Date date2 = DateUtils.str2date(dateStr2, patton); return compareDate(date1, date2); } /** * Date-->Calendar * * @Title: date2calendar * @param date * @return Calendar * @throws */ public static Calendar date2calendar(Date date) { if (date == null) { return null; } Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar; } /** * Calendar-->Date * * @Title: calendar2date * @param calendar * @return Date * @throws */ public static Date calendar2date(Calendar calendar) { if (calendar == null) { return null; } return calendar.getTime(); } public static void main(String[] args) { String patton1 = "yyyy/MM/dd hh:mm:ss"; String patton2 = "yyyy-MM-dd hh:mm:ss"; Date now = DateUtils.getSysDate(); System.out.println("current date:\t\t" + now); System.out.print(patton1 + "\t"); String dateStr1 = DateUtils.date2str(now, patton1); String dateStr2 = DateUtils.date2str(now, patton2); System.out.println(dateStr1); System.out.print(patton2 + "\t"); System.out.println(dateStr2); Date date1 = DateUtils.str2date("2013-03-12 01:09:18", patton2); Date date2 = DateUtils.str2date("2013-03-12 01:15:38", patton2); int result = DateUtils.compareDate(date1, date2); System.out.println("result:\t" + result); } }
@author Free Coding http://ln-ydc.iteye.com/
相关推荐
DateHandler.java日期处理类Java文件下载,有些功能很不错哦,比如计算是否是季度末、计算从现在开始几天后的时间、得到当前时间,用于文件名,使用yyyyMMddHHmmss格式、比较日期,与现在-N天的日期对比、比较日期,...
自己整理的Java日期处理类 。包含获取两个之间段之间的天数、月初日期,月末日期、一个时间段之间的所有的日期,月份 一周的第一天,最后一天、 当前是周几等。仅供参考
java日期处理大全,用与时间的各种处理。。
基本涵盖了各种场景的日期处理需要,包括时间类型转换,获取N天前后,月初月末,某段时间按天拆分等功能,欢迎使用。
有利于对日起处理的理解 Java中对日期的处理还是经常的问题 值得关注
java中关于日期处理的总结,包含各种日期格式之间的转java.util.Date(已经不提倡使用,该类的方法比较少) java.util.Calendar(抽象类) java.util.GregorianCalendar(是Calendar的子类,日期处理时候经常使用该类)****...
java处理日期合并
经典示例Java日期操作类 经典示例Java日期操作类.pdf
java 日期处理工具类
Java实验日期异常类的补充拓展,实现了日期类异常的处理
java日期处理
在开发过程中,经常会判断日期处理。文档是开发过程中对时间处理,几乎包含不了所有用的转换,请放心使用。
日期操作工具类,主要实现了日期的常用操作。 * * 在工具类中经常使用到工具类的格式化描述,这个主要是一个日期的操作类,所以日志格式主要使用 SimpleDateFormat的定义格式. * * 格式的意义如下: 日期和...
获取日期中的某数值。如获取月份 增加日期中某类型的某数值。如增加日期 获取精确的日期 判断字符串是否为日期字符串 获取日期字符串的日期风格。失敗返回null。 将日期字符串转化为日期。失败返回null。 ...
第一部分关于JAVA的Date (参考关于JAVA的Date总结) 第二部分Date工具类(参考一个总结好的很好的关于JAVA的Date工具类)
2014" 专门用于处理springboard定时任务修改cron参数的日期处理方法 12.获取本月第一天(月初时间) 13.获取本月最后一天(月底时间) 以上这些方法都在该Java工具类,当然不仅仅包含这些,还有其他的很多。
java日期处理 和格式解析 包含java.util.Calender java.util. GregorianCalendar java.util.Date
java语言日期处理大全,主要是如何运用日期
* 文件名:DateUtils.java 日期处理相关工具类 * 版本信息:V1.0 * 日期:2013-03-11 * Copyright BDVCD Corporation 2013 * 版权所有 http://www.bdvcd.com */ public class DateUtils { /**定义常量**/ ...