java格式化时间博客园_Java 日期格式化工具类

importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;/*** 日期工具类 默认使用 "yyyy-MM-dd HH:mm:ss" 格式化日期

**/

public final classDateUtils {/*** 英文简写(默认)如:2010-12-01*/

public static String FORMAT_SHORT = "yyyy-MM-dd";/*** 英文全称 如:2010-12-01 23:15:06*/

public static String FORMAT_LONG = "yyyy-MM-dd HH:mm:ss";/*** 精确到毫秒的完整时间 如:yyyy-MM-dd HH:mm:ss.S*/

public static String FORMAT_FULL = "yyyy-MM-dd HH:mm:ss.S";/*** 中文简写 如:2010年12月01日*/

public static String FORMAT_SHORT_CN = "yyyy年MM月dd";/*** 中文全称 如:2010年12月01日 23时15分06秒*/

public static String FORMAT_LONG_CN = "yyyy年MM月dd日 HH时mm分ss秒";/*** 精确到毫秒的完整中文时间*/

public static String FORMAT_FULL_CN = "yyyy年MM月dd日 HH时mm分ss秒SSS毫秒";/*** 获得默认的 date pattern*/

public staticString getDatePattern() {returnFORMAT_LONG;

}/*** 根据预设格式返回当前日期

*

*@return

*/

public staticString getNow() {return format(newDate());

}/*** 根据用户格式返回当前日期

*

*@paramformat

*@return

*/

public staticString getNow(String format) {return format(newDate(), format);

}/*** 使用预设格式格式化日期

*

*@paramdate

*@return

*/

public staticString format(Date date) {returnformat(date, getDatePattern());

}/*** 使用用户格式格式化日期

*

*@paramdate

* 日期

*@parampattern

* 日期格式

*@return

*/

public staticString format(Date date, String pattern) {

String returnValue= "";if (date != null) {

SimpleDateFormat df= newSimpleDateFormat(pattern);

returnValue=df.format(date);

}return(returnValue);

}/*** 使用预设格式提取字符串日期

*

*@paramstrDate

* 日期字符串

*@return

*/

public staticDate parse(String strDate) {returnparse(strDate, getDatePattern());

}/*** 使用用户格式提取字符串日期

*

*@paramstrDate

* 日期字符串

*@parampattern

* 日期格式

*@return

*/

public staticDate parse(String strDate, String pattern) {

SimpleDateFormat df= newSimpleDateFormat(pattern);try{returndf.parse(strDate);

}catch(ParseException e) {

e.printStackTrace();return null;

}

}/*** 在日期上增加数个整月

*

*@paramdate

* 日期

*@paramn

* 要增加的月数

*@return

*/

public static Date addMonth(Date date, intn) {

Calendar cal=Calendar.getInstance();

cal.setTime(date);

cal.add(Calendar.MONTH, n);returncal.getTime();

}/*** 在日期上增加天数

*

*@paramdate

* 日期

*@paramn

* 要增加的天数

*@return

*/

public static Date addDay(Date date, intn) {

Calendar cal=Calendar.getInstance();

cal.setTime(date);

cal.add(Calendar.DATE, n);returncal.getTime();

}/*** 获取时间戳*/

public staticString getTimeString() {

SimpleDateFormat df= newSimpleDateFormat(FORMAT_FULL);

Calendar calendar=Calendar.getInstance();returndf.format(calendar.getTime());

}/*** 获取日期年份

*

*@paramdate

* 日期

*@return

*/

public staticString getYear(Date date) {return format(date).substring(0, 4);

}/*** 按默认格式的字符串距离今天的天数

*

*@paramdate

* 日期字符串

*@return

*/

public static intcountDays(String date) {long t =Calendar.getInstance().getTime().getTime();

Calendar c=Calendar.getInstance();

c.setTime(parse(date));long t1 =c.getTime().getTime();return (int) (t / 1000 - t1 / 1000) / 3600 / 24;

}/*** 按用户格式字符串距离今天的天数

*

*@paramdate

* 日期字符串

*@paramformat

* 日期格式

*@return

*/

public static intcountDays(String date, String format) {long t =Calendar.getInstance().getTime().getTime();

Calendar c=Calendar.getInstance();

c.setTime(parse(date, format));long t1 =c.getTime().getTime();return (int) (t / 1000 - t1 / 1000) / 3600 / 24;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值