【问题标题】:Parsing a REST Token Expiry Date解析 REST 令牌到期日期
【发布时间】:2019-02-25 16:11:23
【问题描述】:

我需要解析 REST WebAPI(用 .NET 编写)返回的到期日期,它返回类似 Sun, 24 Feb 2019 08:06:26 GMT 的内容。

我尝试这样解析:

SimpleDateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
dateFormat.parse(issuedDate);  //throws java.text.ParseException: Unparseable date - eg try to parse: Sun, 24 Feb 2019 08:06:26 GMT

但有时,它会抛出 java.text.ParseException: Unparseable date。知道如何解析使用这种格式的日期(例如Sun, 24 Feb 2019 08:06:26 GMT)吗?

谢谢

更新

我想我找到了问题所在。问题是 Android 语言设置为“Bahasa Indonesia”,星期日不是 Sun 而是 Minggu。知道如何以设置为英语以外的语言解析 REST API(例如Sun, 24 Feb 2019 08:06:26 GMT)返回的令牌吗?

【问题讨论】:

  • 你在dateFormat中设置了GMTTimezone吗?

标签: java android


【解决方案1】:

你好你使用下面的代码

  String cdate = "Sun, 24 Feb 2019 08:06:26 GMT";
    SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.ENGLISH);
    Date date = null;
    try {
        date=sdf.parse(cdate);
    } catch (ParseException e) {
        e.printStackTrace();
    }

【讨论】:

  • 啊……我发现了问题(我认为)。在 Android 平板电脑区域设置中,使用的是设置为印度尼西亚语的不同语言/区域设置。所以,星期日不是Sun,而是Minggu
  • 是的,你也应该在输出 SimpleDateFormat 中传递 Locale.ENGLISH
  • 你是个天才!太感谢了!我每天都在学习新事物,而且,哎呀,一门新语言!!!
猜你喜欢
  • 2017-01-22
  • 2016-04-27
  • 2021-05-10
  • 2019-04-04
  • 1970-01-01
  • 1970-01-01
  • 2018-01-06
  • 2017-12-01
相关资源
最近更新 更多