将 GMT 作为时区而不是 HST 或 PDT

Getting GMT as timezone instead of HST or PDT

我正在尝试使用 TImeZone 值在日志文件中显示当前时间戳。但我可以观察到,对于同一位置的 2 个不同用户,时区的打印方式不同。

对于一个用户,它以 HST 作为区域 ID 显示,而对于其他用户,则以 GMT 显示。

这个 GMT 问题出现在 Note 2 设备中,而在 Note 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 

我尝试更改 phone 的默认时区仍然没有成功。

谁能解释一下

HST 是 GMT-10,所以它给出正确的时间只是格式不同。

Greenwich Mean Time is 10 hours ahead of Hawaii Standard Time 7:04 PM Thursday, Hawaii Standard Time (HST) is 5:04 AM Friday, Greenwich Mean Time (GMT)

使用Use DateFormat df = new SimpleDateFormat("MM/dd/yyyy z:hh:mm:ss a", Locale.US);获取时区名称。