将符合ISO 8601的字符串转换为java.util.Date
我试图将ISO 8601格式的字符串转换为java.util.Date
。
yyyy-MM-dd'T'HH:mm:ssZ
如果与Locale(比较样本)一起使用,我发现该模式符合ISO8601标准。
但是,使用java.text.SimpleDateFormat
,我无法转换格式正确的String 2010-01-01T12:00:00+01:00
。我必须先将它转换为2010-01-01T12:00:00+0100
没有冒号的。
那么,目前的解决方案是
SimpleDateFormat ISO8601DATEFORMAT = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.GERMANY); String date = "2010-01-01T12:00:00+01:00".replaceAll("\\+0([0-9]){1}\\:00", "+0$100");System.out.println(ISO8601DATEFORMAT.parse(date));
这显然不是那么好。我错过了什么或者有更好的解决方案吗?
慕标5832272
相关分类