我想将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:Unparseable date:“2012-5-1.13.0.47。0”
答案 0 :(得分:6)
你不应该解析任何东西。使用其中一种ResultSet.getTimestamp()方法,您将直接拥有java.sql.Timestamp
个对象,该对象扩展为java.util.Date
。
java.sql.Timestamp ts = myResultSet.getTimestamp( … );
这将具有跨数据库和语言环境进行端口化的额外优势。
答案 1 :(得分:1)
“YY-MM-DD”?
“01-MAY-12”
你的日期号码真的是“12”而你的年份是“01”吗?
你的错误怎么显示“2012-5-1.13.0.47.0”,这可能是另一种格式的日期?
答案 2 :(得分:0)
如果您尝试使用JDBC访问它,那么@JB Nizet建议使用getTimestamp()
或者如果您只有String并且需要解析为Date,那么请按照
尝试以下格式
01-MAY-12 01.00.47.000000000 PM
yy-MMM-dd hh.mm.ss.SSSSSSSSSS a