Szukaj…


Konwertuj format daty na milisekundy

Aby przekonwertować datę w formacie dd / MM / rrrr na milisekundy, wywołujesz tę funkcję z danymi w postaci ciągu

public long getMilliFromDate(String dateFormat) {
    Date date = new Date();
    SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
    try {
        date = formatter.parse(dateFormat);
    } catch (ParseException e) {
        e.printStackTrace();
    }
    System.out.println("Today is " + date);
    return date.getTime();
}

Ta metoda konwertuje milisekundy na datę Format znacznika czasu:

public String getTimeStamp(long timeinMillies) {
    String date = null;
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // modify format
    date = formatter.format(new Date(timeinMillies));
    System.out.println("Today is " + date);

    return date;
}

Ta metoda przekształci dany dzień, miesiąc i rok na milisekundy. Będzie to bardzo pomocne podczas korzystania z Timpicker lub Datepicker

public static long getTimeInMillis(int day, int month, int year) {
    Calendar calendar = Calendar.getInstance();
    calendar.set(year, month, day);
    return calendar.getTimeInMillis();
}

Zwróci milisekundy od daty

public static String getNormalDate(long timeInMillies) {
    String date = null;
    SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
    date = formatter.format(timeInMillies);
    System.out.println("Today is " + date);
    return date;
}

Zwróci bieżącą datę

public static String getCurrentDate() {
    Calendar c = Calendar.getInstance();
    System.out.println("Current time => " + c.getTime());
    SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
    String formattedDate = df.format(c.getTime());
    return formattedDate;
}

Uwaga: Java zapewnia obsługę formatu daty z wzorca daty

Aby sprawdzić w terminie

Ten przykład pomoże sprawdzić, czy podany czas jest w określonym przedziale czasowym, czy nie.

Aby sprawdzić, czy jest godzina, możemy użyć klasy DateUtils

boolean isToday = DateUtils.isToday(timeInMillis);

Aby sprawdzić czas w ciągu tygodnia,

private static boolean isWithinWeek(final long millis) {
    return System.currentTimeMillis() - millis <= (DateUtils.WEEK_IN_MILLIS - DateUtils.DAY_IN_MILLIS);
}

Aby sprawdzić czas w ciągu roku,

private static boolean isWithinYear(final long millis) {
    return System.currentTimeMillis() - millis <= DateUtils.YEAR_IN_MILLIS;
}

Aby sprawdzić, czy godzina przypada w ciągu jednego dnia, w tym dzisiaj,

public static boolean isWithinDay(long timeInMillis, int day) {
    long diff = System.currentTimeMillis() - timeInMillis;

    float dayCount = (float) (diff / DateUtils.DAY_IN_MILLIS);

    return dayCount < day;
}

Uwaga: DateUtils to android.text.format.DateUtils

GetCurrentRealTime

Oblicza bieżący czas urządzenia i dodaje / odejmuje różnicę między czasem rzeczywistym a czasem urządzenia

public static Calendar getCurrentRealTime() {

    long bootTime = networkTime - SystemClock.elapsedRealtime();
    Calendar calInstance = Calendar.getInstance();
    calInstance.setTimeZone(getUTCTimeZone());
    long currentDeviceTime = bootTime + SystemClock.elapsedRealtime();
    calInstance.setTimeInMillis(currentDeviceTime);
    return calInstance;
}

uzyskać strefę czasową opartą na UTC.

public static TimeZone getUTCTimeZone() {
    return TimeZone.getTimeZone("GMT");
}


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow