淘先锋技术网

首页 1 2 3 4 5 6 7
public class DateUtils
{
    
    /**
     * 获取时间
     *
     * @param num +今天后某天  -今天前某几天
     * @return
     */
    public static String getNextDateStr(int num)
    {
        Date date = new Date();
        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.DATE, num);
        date = cal.getTime();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        String dateString = formatter.format(date);
        return dateString;
    }
    
    /**
     * 获取时间
     *
     * @param num +今天后某天  -今天前某几天
     * @return
     */
    public static String getNextDateStr(String day, int num) throws Exception
    {
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        Date date = formatter.parse(day);
        Calendar cal = Calendar.getInstance();
        cal.setTime(date);
        cal.add(Calendar.DATE, num);
        date = cal.getTime();
        String dateString = formatter.format(date);
        return dateString;
    }
    
    /**
     * 获取本年第一天
     *
     * @return
     */
    public static String getYear()
    {
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy");
        String dateString = formatter.format(date) + "-01-01";
        return dateString;
    }
    
    /**
     * 获取本月第一天
     *
     * @return
     */
    public static String getMonth()
    {
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
        String dateString = formatter.format(date) + "-01";
        return dateString;
    }
    
    /**
     * 获取两个时间相差的天数
     *
     * @param BT
     * @param ET
     * @return
     * @throws ParseException
     */
    public static long getDiffDay(String BT, String ET) throws ParseException
    {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date startTime = sdf.parse(BT);
        Date endTime = sdf.parse(ET);
        long l = endTime.getTime() - startTime.getTime();
        long day = l / (24 * 60 * 60 * 1000);
        return day;
    }
    
    public static void main(String[] args) throws Exception
    {
        String today = DateUtils.getNextDateStr(0);
        String Yesterday = DateUtils.getNextDateStr( -1);
        String last7day = DateUtils.getNextDateStr( -6);
        String last30day = DateUtils.getNextDateStr( -29);
        String beginyear = DateUtils.getYear();
        
        System.out.println(today);
        System.out.println(Yesterday);
        System.out.println(last7day);
        System.out.println(last30day);
        System.out.println(beginyear);
        
        System.out.println(getDiffDay("2016-02-01", "2017-02-11"));
        System.out.println(getNextDateStr("2016-02-01", 1));
    }
}