相关疑难解决方法(0)

将字符串转换为日期,差不多完成了!

可能重复:
将符合ISO8601的字符串转换为java.util.Date

我正在尝试转换此字符串:

2011-06-07T14:08:59.697-07:00
Run Code Online (Sandbox Code Playgroud)

到Java日期,到目前为止,这是我做的:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.S");
Date date1 = sdf.parse("2011-06-07T14:08:59.697", new java.text.ParsePosition(0));
Run Code Online (Sandbox Code Playgroud)

几乎一切都很好,除了最重要的部分,时区 !! SimpleDateFormat的问题在于它期望TimeZone in +/-hhmm和我的+/-hh:mm格式.

另外,我不知道为什么,这有效:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.S Z");
Date date1 = sdf.parse("2011-06-07T14:08:59.697 -0700", new java.text.ParsePosition(0));
Run Code Online (Sandbox Code Playgroud)

但这不是(时区之前的空间):

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SZ");
Date date1 = sdf.parse("2011-06-07T14:08:59.697-0700", new java.text.ParsePosition(0));
Run Code Online (Sandbox Code Playgroud)

将此日期2011-06-07T14:08:59.697-07:00转换为Java日期的正确格式是什么?

谢谢你的帮助!

java paypal date

2
推荐指数
1
解决办法
1万
查看次数

如何使用课程日期以"YYYY-MM-DD 00:00:00.0"格式获取数据?

如何使用类Date获取格式为"YYYY-MM-DD 00:00:00.0"的数据(使用这个类非常重要)?

我试着做我能想到的一切:

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
df.format(date)
Run Code Online (Sandbox Code Playgroud)

String pattern = "yyyy-MM-dd HH:mm:ss.S";
SimpleDateFormat format = new SimpleDateFormat(pattern);
try {
Date date = format.parse("2011-01-18 00:00:00.0");
} catch (ParseException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

当我使用记录器打印日期时,我得到这种格式"Tue Sep 30 00:00:00 MSK 1913".

java date

0
推荐指数
1
解决办法
9677
查看次数

标签 统计

date ×2

java ×2

paypal ×1