Java Date Add dateAdd(int interval, Date date, int n)

Here you can find the source of dateAdd(int interval, Date date, int n)

Description

date Add

License

Open Source License

Declaration

public static Date dateAdd(int interval, Date date, int n) 

Method Source Code

//package com.java2s;

import java.util.Calendar;
import java.util.Date;

public class Main {

    public static Date dateAdd(int interval, Date date, int n) {
        long time = date.getTime() / 1000L;
        switch (interval) {
        case 1://from   w  w w  .j a v a 2  s .  c  om
            time += n * 86400;
            break;
        case 2:
            time += n * 604800;
            break;
        case 3:
            time += n * 2678400;
            break;
        case 4:
            time += n * 31536000l;
            break;
        case 5:
            time += n * 3600;
            break;
        case 6:
            time += n * 60;
            break;
        case 7:
            time += n;
        }

        Date result = new Date();
        result.setTime(time * 1000L);
        return result;
    }

    public static String getTime(int format) {
        StringBuffer cTime = new StringBuffer(10);
        Calendar time = Calendar.getInstance();
        int miltime = time.get(14);
        int second = time.get(13);
        int minute = time.get(12);
        int hour = time.get(11);
        int day = time.get(5);
        int month = time.get(2) + 1;
        int year = time.get(1);
        if (format != 14)
            if (year >= 2000)
                year -= 2000;
            else
                year -= 1900;

        if (format >= 2)
            if (format == 14)
                cTime.append(year);
            else
                cTime.append(getFormatTime(year, 2));

        if (format >= 4)
            cTime.append(getFormatTime(month, 2));
        if (format >= 6)
            cTime.append(getFormatTime(day, 2));
        if (format >= 8)
            cTime.append(getFormatTime(hour, 2));
        if (format >= 10)
            cTime.append(getFormatTime(minute, 2));
        if (format >= 12)
            cTime.append(getFormatTime(second, 2));
        if (format >= 15)
            cTime.append(getFormatTime(miltime, 3));
        return cTime.toString();
    }

    private static String getFormatTime(int time, int format) {
        StringBuffer numm = new StringBuffer();
        int length = String.valueOf(time).length();
        if (format < length)
            return null;
        for (int i = 0; i < format - length; ++i)
            numm.append("0");

        numm.append(time);
        return numm.toString().trim();
    }
}

Related

  1. dateAdd(Date date, int field, int amount)
  2. dateAdd(Date date, int type, int num)
  3. dateAdd(Date date, int val)
  4. dateAdd(final Date baseDateTime, int daysToAdd, boolean chopTime)
  5. dateAdd(int datePart, int amount, Date date)
  6. DateAdd(String strDate, int iCount, int iType)
  7. DateAdd3Days(String _date)
  8. dateAddDay(Date date, int day)
  9. DateAddDays(Date _date, int days)