-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
  • 618
  • 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,928
  • 5
  • 34
  • 62
Azat Nugusbayev
  • 1,391
  • 11
  • 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
  • 10,058
  • 6
  • 42
  • 52
RexSplode
  • 1,475
  • 1
  • 16
  • 24