Я пытаюсь преобразовать отметку времени даты UTC в любой часовой пояс, но в обоих случаях я всегда получаю время UTC.Преобразование UTC Временная метка в любое времяZone
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
public class UTCtoLocalTime {
private static String ConvertToLocalTime(String id, String time) throws ParseException{
DateFormat localtime = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss");
localtime.setTimeZone(TimeZone.getTimeZone(id));
return localtime.format(localtime.parse(time));
}
public static void main(String[] args) throws ParseException {
SimpleDateFormat dateFormatGmt = new SimpleDateFormat("yyyy-MMM-dd HH:mm:ss");
dateFormatGmt.setTimeZone(TimeZone.getTimeZone("UTC"));
String time = dateFormatGmt.format(new Timestamp(System.currentTimeMillis()));
System.out.println("UTC time "+ time);
System.out.println("Local Time "+ ConvertToLocalTime("America/Mexico_City", time));
}
}
Я не уверен, где я делаю ошибку. Может кто-нибудь мне помочь?
В обеих случаях конвертируются текущее время местной даты в формат UTC и Америке/Mexico_City, но в моем случае я хочу использовать входящую метку времени UTC для преобразования в любой заданный часовой пояс. Это не помогает мне. – rakeeee