我想在android java代码中将msecs转换为日期时间字符串,例如:
msecs = 60*60*1000;
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
String dateString = formatter.format(new Date(msecs * 1L));
但结果是19:00:00,我希望输出为1:00:00。
这段代码出了什么问题?
答案 0 :(得分:1)
您需要将时区设置为“GMT”,例如:
import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.TimeZone;
public class Dater {
public static void main(String[] argv) {
int msecs = 60*60*1000;
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
String dateString = formatter.format(new Date(msecs * 1L));
System.out.println(dateString);
}
}