Java 解析REST令牌到期日期
我需要解析REST WebAPI(用.NET编写)返回的到期日期,它返回类似以下内容的Java 解析REST令牌到期日期,java,android,Java,Android,我需要解析REST WebAPI(用.NET编写)返回的到期日期,它返回类似以下内容的Sun,2019年2月24日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
Sun,2019年2月24日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
。你知道如何使用这种格式解析日期(例如:2019年2月24日08:06:26 GMT格林威治标准时间)吗
谢谢
更新
我想我发现了问题所在。问题是Android语言被设置为“Bahasa Indonesia”,周日不是Sun,而是Minggu。您知道如何用设置为英语以外的语言解析REST API返回的令牌(例如:Sun,2019年2月24日08:06:26 GMT)吗?您好,您使用以下代码
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();
}
您好,您使用以下代码
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中,tablet locale使用的是另一种语言/语言环境,设置为Bahasa Indonesia。所以,星期天不是太阳,而是明谷。是的,你应该通过Locale.ENGLISH输出SimpleDateFormat。你也是个天才!非常感谢你!我每天都学一种新东西,还有,见鬼,一种新语言!!!啊。。。我发现了问题(我想)。在Android中,tablet locale使用的是另一种语言/语言环境,设置为Bahasa Indonesia。所以,星期天不是太阳,而是明谷。是的,你应该通过Locale.ENGLISH输出SimpleDateFormat。你也是个天才!非常感谢你!我每天都学一种新东西,还有,见鬼,一种新语言!!!您是否在
dateFormat
中设置了GMTTimezone
?是否在dateFormat
中设置了GMTTimezone
?