java常用时间处理

package com.test.Unit;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;


public class DateTimeUtil {


public DateTimeUtil() {
}


/*
* 获取当前时间: 格式 如:2007-07-27 17:34:20.25
*/
public static Timestamp getNowTime() {
SimpleDateFormat forms = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return new Timestamp(System.currentTimeMillis());
}


/**
* 获取当前时间默认格式化:yyyy-MM-dd
*/
public static Timestamp getNowTimestamp(String format) {
String date = getCurrentDay(format);
SimpleDateFormat forms = new SimpleDateFormat(format);
Timestamp time = null;
try {
time = new Timestamp(forms.parse(date).getTime());
} catch (ParseException illl) {
illl.printStackTrace();
}
return time;
}


/**
* 获取当前年份
*/
public static String getYear() {
SimpleDateFormat forms = new SimpleDateFormat("yyyy");
return forms.format(new Date());
}


/**
* 获取当前月份
*/
public static String getMonth() {
SimpleDateFormat forms = new SimpleDateFormat("MM");
return forms.format(new Date());
}


/**
* 获取当前号数
*/
public static String getDay() {
SimpleDateFormat forms = new SimpleDateFormat("dd");
return forms.format(new Date());
}


/**
* 获取当前小时数
*/
public static String getHour() {
SimpleDateFormat forms = new SimpleDateFormat("HH");
return forms.format(new Date());
}


/**
* 获取当前分时
*/
public static String getMinute() {
SimpleDateFormat forms = new SimpleDateFormat("mm");
return forms.format(new Date());
}


/**
* 获取当前秒
*/
public static String getSecond() {
SimpleDateFormat forms = new SimpleDateFormat("ss");
return forms.format(new Date());
}


/**
* 获取当前毫秒
*/
public static String getMillisecond() {
SimpleDateFormat forms = new SimpleDateFormat("SSS");
return forms.format(new Date());
}


/**
* 获取当前日期是星期几<br>

* @param dt
* @return 当前日期是星期几
*/
public static String getWeekOfDate(Date dt) {
// String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五",
// "星期六"};
String[] weekDays = { "7", "1", "2", "3", "4", "5", "6" };
Calendar cal = Calendar.getInstance();
cal.setTime(dt);


int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (w < 0)
w = 0;


return weekDays[w];
}


/**
* 比较时间是否是今天
*/
public static boolean isToday(Timestamp time) {
SimpleDateFormat today = new SimpleDateFormat("yy-MM-dd");
return today.format(time).equals(today.format(new Date()));
}


/**
* 比较时间是否是今天
*/
public static boolean isToday(Date date) {
SimpleDateFormat today = new SimpleDateFormat("yy-MM-dd");
return today.format(date).equals(today.format(new Date()));
}


/**
* 比较时间是否是今天
*/
public static boolean isToday(String date) {
SimpleDateFormat today = new SimpleDateFormat("yy-MM-dd");
boolean b = false;
try {
b = today.format(today.parse(date))
.equals(today.format(new Date()));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return b;
}


/**
* 获取当前时间 parms:formmat 格式化
*/
public static String getCurrentDay(String formmat) {
SimpleDateFormat forms = new SimpleDateFormat(formmat);
return forms.format(new Date());
}


/**
* 获取两个时间的时间差,差数为天数; parms:formmat last:后面时间 index 前面时间
*/
public static long getDayBetween(String index, String last) {
return DateTimeUtil.getDayBetween(index, last, "yyyy-MM-dd");
}


/**
* 获取两个时间的时间差; parms:formmat last:后面时间 index 前面时间
*/
public static long getMinuteBetween(String index, String last) {
long day = getDayBetween(index, last);
long minute = day * 24 * 60 + Long.parseLong(getHour()) * 60
+ Long.parseLong(getMinute());
return minute;
}


/**
* 获取两个时间的时间差; parms:formmat last:后面时间 index 前面时间
*/
public static long getDayBetween(String index, String last, String format) {
long date = 0L;
SimpleDateFormat formats = new SimpleDateFormat(format);
try {
Date last_date = formats.parse(last);
Date index_date = formats.parse(index);
date = (last_date.getTime() - index_date.getTime()) / 0x5265c00L;
} catch (ParseException e) {
date = 0L;
e.printStackTrace();
}
return date;
}


/**
* 获取当前时间默认格式化:yyyy-MM-dd
*/
public static Timestamp getTodayTimestamp() {
String date = getCurrentDay("yyyy-MM-dd");
SimpleDateFormat forms = new SimpleDateFormat("yyyy-MM-dd");
Timestamp time = null;
try {
time = new Timestamp(forms.parse(date).getTime());
} catch (ParseException illl) {
illl.printStackTrace();
}
return time;
}


/**
* 功能:得到指定时间j个周期后的时间;默认格式化:yyyy-MM-dd HH:mm:ss parms: datestr:指定的时间;
* j:j个周期后的时间,type:周期类型:为Calendar中的类型,例如Calendar.DATE表示天
*/
public static Timestamp rollDateTimestamp(String datestr, int j, int type) {
String date = datestr;
if (date == null || date.trim().equals(""))
date = getCurrentDay("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat forms = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
try {
cal.setTime(forms.parse(date));
} catch (ParseException e) {
e.printStackTrace();
}
cal.add(type, j);
Timestamp time = new Timestamp(cal.getTimeInMillis());
return time;
}


/**
* 功能:得到指定时间j个周期后的时间; parms: datestr:指定的时间;
* j:j个周期后的时间,type:周期类型:为Calendar中的类型,例如Calendar.DATE表示天
*/
public static String rollDateForString(String datestr, int j, int type) {
String date = datestr;
if (date == null || date.trim().equals(""))
date = getCurrentDay("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat forms = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
try {
cal.setTime(forms.parse(date));
} catch (ParseException e) {
e.printStackTrace();
}
cal.add(type, j);
return forms.format(cal.getTimeInMillis());
}


/**
* 功能:得到指定时间j个周期后的时间; format :日期格式 parms: datestr:指定的时间; j:j个周期后的时间,
* type:周期类型:为Calendar中的类型,例如Calendar.DATE表示天
*/
public static String rollDateForString(String format, String datestr,
int j, int type) {
String date = datestr;
if (date == null || date.trim().equals(""))
date = getCurrentDay(format);
SimpleDateFormat forms = new SimpleDateFormat(format);
Calendar cal = Calendar.getInstance();
try {
cal.setTime(forms.parse(date));
} catch (ParseException e) {
e.printStackTrace();
}
cal.add(type, j);
return forms.format(cal.getTimeInMillis());
}


/**
* 功能:格式化时间

* @parms: time:指定的时间; formats:指定的格式
*/
public static String format(Date date, String formats) {
if (date == null) {
return null;
} else {
SimpleDateFormat forms = new SimpleDateFormat(formats);
String dastr = forms.format(date);
return dastr;
}
}


/**
* 功能:格式化时间 parms: time:指定的时间; formats:指定的格式
*/
public static String format(String time, String formats) {
if (time == null) {
return null;
} else {
SimpleDateFormat forms = new SimpleDateFormat(formats);
String dastr = forms.format(time);
return dastr;
}
}


public static Date stringToDate(String time){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date currentTime = sdf.parse(time);
return currentTime;
}


public static void main(String[] arg) {
// String index="2007-02-02";
String Year = DateTimeUtil.getYear();
String Month = DateTimeUtil.getMonth();
String Day = DateTimeUtil.getDay();
Timestamp time = Timestamp.valueOf("2009-03-29 00:00:00.0");
// System.out.println("1--"+DateTimeUtil.getMillisecond());
// System.out.println("2--"+DateTimeUtil.rollDayTimestamp("2002-07-01",
// 31));
// System.out.println("3--"+DateTimeUtil.rollDateForString("",
// -23,Calendar.HOUR));
/*
* System.out.println("4--"+DateTimeUtil.getTodayTimestamp());
* System.out.println("5--"+DateTimeUtil.getNowTime());
* System.out.println("6--"+DateTimeUtil.isToday(time));
* System.out.println("7--"+DateTimeUtil.getCurrentDay("yyyy-MM-dd
* HH:mm:ss")); System.out.println("8--"+Year+"-"+Month+"-"+Day);
*/
String s = DateTimeUtil.rollDateForString("yyyy-MM-dd", null, 0,
Calendar.DAY_OF_YEAR);
System.out.println(s);


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值