Calendar calendar = Calendar.getInstance();
int hnow=calendar.get(Calendar.HOUR_OF_DAY);
String hour=Integer.toString(hnow);
String min=Integer.toString(calendar.get(Calendar.MINUTE));
это мой код. я получаю сейчас время. Я хотел бы получить сейчас() - 27 секунд (час, минута, секунда)
как я могу это сделать?
Добавление отрицательного значения возможно, вместо установки значения.
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.SECOND, -27);
С Joda-Time библиотека 2.3...
DateTime dateTime = new DateTime().minusSeconds( 27 );
С конкретным часовым поясом, а не по умолчанию...
DateTime dateTime = new DateTime( DateTimeZone.forID( "Europe/Paris" ) ).minusSeconds( 27 );
Для преобразования в экземпляр java.util.Date...
java.util.Date date = dateTime.toDate();
Я использую класс Clander, чтобы сделать это здесь, - это мой код для получения даты и времени
Calendar c = Calendar.getInstance();
String date = c.get(Calendar.YEAR) + "-"+ c.get(Calendar.MONTH)+ "-"+ c.get(Calendar.DAY_OF_MONTH) ;
String time = c.get(Calendar.HOUR_OF_DAY) + ":" + c.get(Calendar.MINUTE)+ ":" + c.get(Calendar.SECOND);
Вот как вы можете это сделать, используя класс Calendar
, который поставляется с j2se.
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.SECOND, calendar.get(Calendar.SECOND) - 27);
String hour = Integer.toString(calendar.get(Calendar.HOUR_OF_DAY));
String min = Integer.toString(calendar.get(Calendar.MINUTE));
String sec = Integer.toString(calendar.get(Calendar.SECOND));
Как вы можете видеть, это довольно утомительно. Многие люди предпочитают использовать Joda-Time вместо этих классов.
new java.util.Date(System.currentTimeMillis() - 27000);
?