我正在尝试使用TImeZone值显示日志文件中的当前时间戳。但我可以观察到,对于同一位置的2个不同用户,时区的打印方式不同。
对于一个用户,它以HST显示为区域ID,而对于其他用户则显示为GMT。
GMT的这个问题发生在Note 2设备中,注4中没有问题。
以下是我的代码如何获取时间戳,
try {
Date date = new Date();
DateFormat df = new SimpleDateFormat("MM/dd/yyyy z:hh:mm:ss a");
df.setTimeZone(TimeZone.getDefault());
currentTimeStamp = df.format(date);
}
catch (Exception e) {
Log.e("Logger", "Error in getCurrentTimeStamp = " + e.getMessage(),e);
}
我期待的是这样的,
05/02/2015 HST:09:43:46 AM
但在注2中,它总是给我,
GMT-10:00:09:43:46 AM
我尝试更改手机的默认时区仍然没有运气。
任何人都可以解释一下
答案 0 :(得分:2)
HST是GMT-10所以只给出正确的时间格式不同。
格林威治标准时间比夏威夷标准时间提前10小时 星期四下午7:04,夏威夷标准时间(HST)是 格林威治标准时间(格林威治标准时间)周五上午5:04
使用Use DateFormat df = new SimpleDateFormat("MM/dd/yyyy z:hh:mm:ss a", Locale.US);
获取TimeZone名称。