我想将 oracle 时间戳(01-MAY-12 01.00.47.000000000 PM
)解析为java.util.Date
我使用了这个:
Date dateStart=new SimpleDateFormat("yy-MM-dd HH:mm:ss.S").parse("01-MAY-12 01.00.47.000000000 PM");
但我得到这个错误
java.text.ParseException:无法解析的日期:“2012-5-1.13.0.47.0”
你不应该解析任何东西。使用ResultSet.getTimestamp()方法之一,您将java.sql.Timestamp
直接拥有一个对象,它扩展了java.util.Date
.
java.sql.Timestamp ts = myResultSet.getTimestamp( … );
这将具有跨数据库和语言环境的门户网站的额外优势。
“yy-MM-dd”?
“12 年 5 月 1 日”
你的天数真的是“12”而你的年份真的是“01”吗?
你的错误怎么会显示“2012-5-1.13.0.47.0”,这可能是另一种格式的日期?
如果您尝试使用 JDBC 访问它,那么就像@JB Nizet 建议的那样使用getTimestamp()
,或者如果您只有 String 并且需要解析为 Date 然后按照以下方式进行操作
尝试以下格式
01-MAY-12 01.00.47.000000000 PM
yy-MMM-dd hh.mm.ss.SSSSSSSSSS a