Мне нужно преобразовать String формы HHMM (в EST или EDT - сегодня) в метку времени в формате YYYYMMDD-HH: MM: SS. Поэтому, если я получу 1512, я хочу выразить 3: 12EDT в GMT и формате: 20110714-20: 12: 00. Как я могу это сделать?Преобразование строки HHMM в формат GMT в Java
Я пробовал следующий код, и он не конвертируется вообще.
int hour = Integer.parseInt(HHMM.substring(0, 2));
int min = Integer.parseInt(HHMM.substring(2, 4));
Date day = new Date();
day.setHours(hour);
day.setMinutes(min);
day.setSeconds(00);
DateFormat gmtFormat = new SimpleDateFormat();
gmtFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
gmtFormat.format(day);
return day.getYear() + "" + day.getMonth() + "" +
day.getDate() + "-" + day.getHours() + ":" +
day.getMinutes() + ":" + day.getSeconds();
Только одно примечание, вы не должны использовать date.setHours, поскольку они устарели, попробуйте использовать объект Calendar. – RMT
'gmt.format (day)' возвращает строку - вам не нужны эти результаты? –
с календарем вы можете просто cal.set (Calendar.HOUR, hourValue); – RMT