-5

This is a sample code which works. How can I get the time in seconds since midnight in Java Android

long time = 1450853970
    DateTime.DateFormat = "MM/dd/yyyy"
    long unix_time = DateTime.DateParse(DateTime.Date(time * 1000)) / 1000  
    long time_in_seconds = time - unix_time + (DateTime.TimeZoneOffset * -3600)
user1382802
  • 608
  • 2
  • 12
  • 24

2 Answers2

1

Try to use Calendar, as Date is weird))

Calendar now = Calendar.getInstance();
Calendar midnight = Calendar.getInstance();

midnight.set(Calendar.HOUR_OF_DAY, 0);
midnight.set(Calendar.MINUTE, 0);
midnight.set(Calendar.SECOND, 0);
midnight.set(Calendar.MILLISECOND, 0);

long difference = now.getTimeInMillis() - midnight.getTimeInMillis();
Matt Robertson
  • 2,551
  • 5
  • 27
  • 56
Azat Nugusbayev
  • 1,321
  • 10
  • 19
0
private int getSecondsFromMidnight(DateTime d) {
    DateTime pastMidnight = d.minusDays(1).withHourOfDay(23).withMinuteOfHour(59).withSecondOfMinute(59);
    Seconds seconds = Seconds.secondsBetween(pastMidnight, d);

    return seconds.getSeconds();
}
Louis Barranqueiro
  • 9,390
  • 6
  • 39
  • 51
RexSplode
  • 1,417
  • 1
  • 14
  • 24