Android
Time Utils
Sök…
Konvertera datumformat till millisekunder
För att konvertera ditt datum i dd / MM / åååå-format till millisekunder kallar du denna funktion med data som String
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();
}
Denna metod konverterar millisekunder till datumstämpelformatdatum:
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;
}
Denna metod konverterar givet specifik dag, månad och år till millisekunder. Det kommer att vara till stor hjälp när du använder Timpicker
eller Datepicker
public static long getTimeInMillis(int day, int month, int year) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, day);
return calendar.getTimeInMillis();
}
Det kommer att returnera millisekunder från datumet
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;
}
Det kommer att returnera aktuellt datum
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;
}
Obs: Java Tillhandahåller antal stöd för datumformat Datummönster
Kontrollera inom en period
Detta exempel hjälper till att verifiera att den angivna tiden är inom en period eller inte.
För att kontrollera klockan är idag kan vi använda klassen DateUtils
boolean isToday = DateUtils.isToday(timeInMillis);
För att kontrollera tiden är inom en vecka,
private static boolean isWithinWeek(final long millis) {
return System.currentTimeMillis() - millis <= (DateUtils.WEEK_IN_MILLIS - DateUtils.DAY_IN_MILLIS);
}
För att kontrollera tiden är inom ett år,
private static boolean isWithinYear(final long millis) {
return System.currentTimeMillis() - millis <= DateUtils.YEAR_IN_MILLIS;
}
För att kontrollera tiden är inom ett antal dagar dag inklusive dag,
public static boolean isWithinDay(long timeInMillis, int day) {
long diff = System.currentTimeMillis() - timeInMillis;
float dayCount = (float) (diff / DateUtils.DAY_IN_MILLIS);
return dayCount < day;
}
Obs: DateUtils är android.text.format.DateUtils
GetCurrentRealTime
Detta beräknar aktuell enhetstid och lägger till / subtraherar skillnaden mellan verklig och enhetstid
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;
}
få UTC-baserad tidszon.
public static TimeZone getUTCTimeZone() {
return TimeZone.getTimeZone("GMT");
}