java - 使用什么 SimpleDateFormat 模式?

标签 java date simpledateformat

我从 API 收到一个字符串形式的日期,格式如下:".expires": "Tue, 28 Apr 2015 06:17:40 GMT"

现在我试图将它传递给 java 中的 Date 变量:

public static Date getExpireDate(String date) {
        if (date != null || (date.length() == 0)) {
            //Date is not null or empty so continue
            try {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                Date dateNew = sdf.parse(date);
                return dateNew;
            }catch(Exception e){}
        }
        // return default timeout           
    }

现在我找到了以下documentation:

它有一个类似的例子,它呈现的模式如下: EEE, d MMM yyyy HH:mm:ss Z

但是我的时区只显示 GMT。不是 GMT -08

什么模式将解析这个字符串?

最佳答案

这应该有效:

new SimpleDateFormat("EEE',' dd MMM yyyy HH:mm:ss z", Locale.US)

小写字母“z”代表一般时区,即太平洋标准时间PSTGMT-08:00

关于java - 使用什么 SimpleDateFormat 模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29911781/

相关文章:

java - 如何将Android的谷歌地图本地化为特定区域(以遵守本地边界和法律)

datetime - ExtJs4,如何在gridpanel中手动编辑具有文本格式(没有时间字段或日期字段)的单元格日期时间?

javascript - 如何检查日期是否在 30 天内?

java.lang.NoSuchMethodError : org. apache.poi.util.POILogger.log(I[Ljava/lang/Object;)V

java - 无法在应用于 AJAX 的多个类上设置 CSS

Java不断检查日期

android - android中日期时间的unix时间戳

android - 将 yyyy-mm-dd 转换为 dd mm yyyy

Java simpleDateFormat 转换

java - ARCore – WorldScale 和 LocalScale 有什么区别?