java 时间方法_java 时间有关常用方法

/**

* 时间戳转日期

* @param ms

* @return

*/

public Date transForDate(long ms){

long msl=(long)ms*1000; //视情况乘1000或者除1000

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

Date temp=null;

if(!ToolsUtil.isEmpty(ms)){

try {

String str=sdf.format(msl);

temp=sdf.parse(str);

} catch (ParseException e) {

e.printStackTrace();

}

}

return temp;

}

/**

* 日期转时间戳

* @param date

* @return

*/

public long transForMilliSecond(String dateNumber){//得到13位的时间戳

Long startDay = (long) 0;

try {

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

//String dateNumber = format.format(new Date());

Date dateStart = format.parse(dateNumber);

startDay = (Long) (dateStart.getTime());

} catch (ParseException e) {

e.printStackTrace();

}

return startDay;

}

/**

* 获取当前日期

* @return

*/

public String dateYMD() {

Date d = new Date();

System.out.println(d);

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

String dateNowStr = sdf.format(d);

System.out.println("格式化后的日期:" + dateNowStr);

// String str = "2012-1-13 17:26:33"; //要跟上面sdf定义的格式一样

// Date today = sdf.parse(str);

// System.out.println("字符串转成日期:" + today);

return dateNowStr;

}

/**

* 获取当前日期 -减一天

* @return

*/

public String dateYMDjian1t() {

Calendar calendar = Calendar.getInstance();

calendar.setTime(new Date());

calendar.add(Calendar.DATE, -1);

Date d = calendar.getTime();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");

String dateNowStr = sdf.format(d);

return dateNowStr;

}

/**

* 计算两个日期之间差的天数

*

* @param ts1 时间戳1

* @param ts2 时间戳2

* @return

*/

public static int caculate2Days(Integer ts1, Integer ts2) {

Date firstDate = DateFormatUtil.transForDate(ts1);

Date secondDate = DateFormatUtil.transForDate(ts2);

Calendar calendar = Calendar.getInstance();

calendar.setTime(firstDate);

int dayNum1 = calendar.get(Calendar.DAY_OF_YEAR);

calendar.setTime(secondDate);

int dayNum2 = calendar.get(Calendar.DAY_OF_YEAR);

return Math.abs(dayNum1 - dayNum2);

}

/**

* 给手机加密中间四位加星号

*

* @param mobile

* @return

*/

public String mobileSerect(String mobile){

if(!StringUtils.isBlank(mobile)){

int between = mobile.length()/2;

mobile = mobile.substring(0, between-2)+"****"+mobile.substring(between+2, mobile.length());

}

return mobile;

}

/**

* 给邮箱加密加星号

*

* @param email

* @return

*/

public String emailSerect(String email) {

if(!StringUtils.isBlank(email)){

int length = email.lastIndexOf("@");

email = email.substring(0, 2)+"****"+email.substring(length-2, email.length());

}

return email;

}

/**

* 获取传入时间和当前时间的时间差

* @return

*/

public static Long getTimediff(int timeStamp){

Date d1 = DateFormatUtil.transForDate(timeStamp);

Date today = new Date();

if(d1.getTime()

return null;

}

return (d1.getTime()-today.getTime())/1000;

}

/**

* 获取某周的第一天日期

* @param week 0 当周 1 上一周 -1 下一周

* @return

*/

public static String weekFirstDay(int week){

Calendar c1 = Calendar.getInstance();

int dow = c1.get(Calendar.DAY_OF_WEEK);

c1.add(Calendar.DATE, -dow-7*(week-1)-5 );

String d1 = new SimpleDateFormat("yyyy-MM-dd").format(c1.getTime());

return d1+" 00:00:00";

}

/**

* 获取某周的最后一天日期

* @param week

* @return

*/

public static String weekLastDay(int week){

Calendar c1 = Calendar.getInstance();

int dow = c1.get(Calendar.DAY_OF_WEEK);

c1.add(Calendar.DATE, -dow-7*(week-1)+1);

String d1 = new SimpleDateFormat("yyyy-MM-dd").format(c1.getTime());

return d1+" 23:59:59";

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值