日期的处理

1、获取当前时间
    Date date=new Date();
    DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String time=format.format(date);
2、    (1)获取当前时间到1970年1月1日凌晨的的毫秒值
        long time=new Date().getTime();
        Date date=new Date(time);
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        System.out.println(sdf.format(date));
    (2)获取当前时间到1970年1月1日凌晨的的毫秒值
        System.out.println(System.currentTimeMillis());        //因为系统也有时间,所以他获得的是系统的时间到1970,这个是系统提供的系统方法,可以和直接使用
3、字符串转成时间毫秒值(可以进行时间的加减)
    String dateTime="20121025112950";  
    Calendar c = Calendar.getInstance();      
    c.setTime(new SimpleDateFormat("yyyyMMddHHmmss").parse(dateTime));  
    System.out.println("时间转化后的毫秒数为:"+c.getTimeInMillis());  
    
    
    
    DateFormatHelper类中的方法以及使用说明
        1、public static String long2str14(long time)        //将获取的long类型的时间转化成yyyyMMddHHmmss格式的字符串
        2、public static String long2str8(long time)        //将获取的long类型的时间转化成yyyyMMdd格式的字符串
        3、public static String long2str17(long time)        //将获取的long类型的时间转化成yyyyMMddHHmmssSSS格式的字符串
        4、public static String formatYMD(String rqStr)        //将字符串转化成yyyy年MM月dd日格式
        5、public static String formatYMD2(String rqStr)    //将字符串转化成yyyy-MM-dd格式
        6、public static String formatYMD3(String rqStr)    //将字符串转化成yyyy/MM/dd格式
        7、public static String formatYMD4(String rqStr)    //将字符串转化成yyyy年MM月dd hh:mm格式
        8、public static String fomat8Str(String str)        //格式化日期yyyy-mm-dd 为 yyyymmdd
        9、public static String getServiceDate()            // 获取当前时间 yyyy-mm-dd用于页面回显示服务器时间
        10、public static String getBeforDate(String dateStr,int diff)    //获取当前时间的前n天时间 yyyyMMdd
        11、public static int daysBetween(String smdate,String bdate) throws Exception    //方法描述:计算两个日期相聚多少天
        12、public static String getServiceDate(int diff)        //获取距离当前时间 yyyy-mm-dd diff间隔的时间用于页面回显服务器时间
                方法9和方法12的使用方法、
                <%@ page import="com.sx.common.helper.DateFormatHelper" %>        //在页面最上面引入包
                $('#rqfwq').val('<%=DateFormatHelper.getServiceDate(-1)%>');    //把这个id为rqfwq的元素给他动态赋值时间
package com.sx.common.helper;

import java.text.DateFormat;
import java.text.SimpleDateFormat;                                                                          
import java.util.Calendar;
import java.util.Date;

import com.sx.utility.DateTools;

public class DateFormatHelper {
	
	private DateFormatHelper(){}
	private final static String FORMAT_STR_14 = "yyyyMMddHHmmss";
	private final static String FORMAT_STR_8 = "yyyyMMdd";
	private final static String FORMAT_STR_17 = "yyyyMMddHHmmssSSS";
	public static String long2str14(long time){
		Date d = new Date(time);
		DateFormat df = new SimpleDateFormat(FORMAT_STR_14);
		return df.format(d);
	}
	public static String long2str8(long time){
		Date d = new Date(time);
		DateFormat df = new SimpleDateFormat(FORMAT_STR_8);
		return df.format(d);
	}
	public static String long2str17(long time){
		Date d = new Date(time);
		DateFormat df = new SimpleDateFormat(FORMAT_STR_17);
		return df.format(d);
	}
	/**
	 * 格式化时间  年月日
	 */
	public static String formatYMD(String rqStr) {
		if(StringHelper.isEmpty(rqStr) || rqStr.length()<8){
			return "";
		}
		StringBuffer sj= new StringBuffer();
		String year=rqStr.substring(0,4);
		String moth = rqStr.substring(4, 6);
		if("0".equals(rqStr.substring(4, 5))){
			moth = rqStr.substring(5, 6);
		}
		String day = rqStr.substring(6, 8);
		if("0".equals(rqStr.substring(6, 7))){
			day = rqStr.substring(7, 8);
		}
		sj.append(year);
		sj.append("年");
		sj.append(moth);
		sj.append("月");
		sj.append(day);
		sj.append("日");
		return sj.toString();
	}
	/**
	 * 格式化时间  年月日
	 */
	public static String formatYMD2(String rqStr) {
		if(StringHelper.isEmpty(rqStr) || rqStr.length()<8){
			return "";
		}
		StringBuffer sj= new StringBuffer();
		String year=rqStr.substring(0,4);
		String moth = rqStr.substring(4, 6);
		String day = rqStr.substring(6, 8);
		sj.append(year);
		sj.append("-");
		sj.append(moth);
		sj.append("-");
		sj.append(day);
		return sj.toString();
	}
	/**
	 * 格式化时间  年月日
	 */
	public static String formatYMD3(String rqStr) {
		if(StringHelper.isEmpty(rqStr) || rqStr.length()<8){
			return "";
		}
		StringBuffer sj= new StringBuffer();
		String year=rqStr.substring(0,4);
		String moth = rqStr.substring(4, 6);
		String day = rqStr.substring(6, 8);
		sj.append(year);
		sj.append("/");
		sj.append(moth);
		sj.append("/");
		sj.append(day);
		return sj.toString();
	}
	/**
	 * 格式化时间  年月日
	 */
	public static String formatYMD4(String rqStr) {
		if(StringHelper.isEmpty(rqStr) || rqStr.length()<14){
			return "";
		}
		StringBuffer sj= new StringBuffer();
		String year=rqStr.substring(0,4);
		String moth = rqStr.substring(4, 6);
		String day = rqStr.substring(6, 8);
		String hh = rqStr.substring(8, 10);
		String mm = rqStr.substring(10, 12);
		sj.append(year);
		sj.append("年");
		sj.append(moth);
		sj.append("月");
		sj.append(day);
		sj.append(" ");
		sj.append(hh);
		sj.append(":");
		sj.append(mm);
		return sj.toString();
	}
	/**
	 * 格式化日期yyyy-mm-dd 为 yyyymmdd
	 */
	public static String fomat8Str(String str){
		return str.replace("-", "");
	}
	/**
	 * 获取当前时间 yyyy-mm-dd用于页面回显示服务器时间
	 */
	public static String getServiceDate(){
		Date d = new Date(System.currentTimeMillis());
		DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
		return df.format(d);
	}
	/**
	 * 获取当前时间的前n天时间 yyyyMMdd
	 */
	public static String getBeforDate(String dateStr,int diff){
		return new DateTools().getBeforeTime(dateStr, FORMAT_STR_8, diff, FORMAT_STR_8);
	}
	/**
	 * 
	 * 方法描述:计算两个日期相聚多少天
	 * @参数类型:
	 * @返回类型:int
	 */
	public static int daysBetween(String smdate,String bdate) throws Exception{  
        SimpleDateFormat sdf=new SimpleDateFormat(FORMAT_STR_14);  
        Calendar cal = Calendar.getInstance();    
        cal.setTime(sdf.parse(smdate));    
        long time1 = cal.getTimeInMillis();                 
        cal.setTime(sdf.parse(bdate));    
        long time2 = cal.getTimeInMillis();         
        long between_days=(time2-time1)/(1000*3600*24);  
            
       return Integer.parseInt(String.valueOf(between_days));     
    } 
	
	/**
     * 获取距离当前时间 yyyy-mm-dd diff间隔的时间用于页面回显服务器时间
     */
    public static String getServiceDate(int diff) {
        Date d = new Date( System.currentTimeMillis() + diff * 24 * 60 * 60 * 1000 );
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        return df.format(d);
    }
}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值