Получение метки времени unix от даты()
Я могу преобразовать метку времени unix в
6 ответов:
чтобы получить временную метку unix от
Date()
мы должны разделитьgetTime() / 1000
Date currentDate = new Date(); currentDate.getTime() / 1000; // 1397132691
или просто:
long unixTime = System.currentTimeMillis() / 1000L;
import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.TimeZone; public class Timeconversion { private DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmm", Locale.ENGLISH); //Specify your locale public long timeConversion(String time) { long unixTime = 0; dateFormat.setTimeZone(TimeZone.getTimeZone("GMT+5:30")); //Specify your timezone try { unixTime = dateFormat.parse(time).getTime(); unixTime = unixTime / 1000; } catch (ParseException e) { e.printStackTrace(); } return unixTime; } }
в java 8 удобно использовать новую дату lib и
getEpochSecond
метод, чтобы получить метку времени (в секунду)
Instant.now().getEpochSecond();