Java将oracle timestamp解析为date.util.date

时间:2012-05-16 09:31:13

标签: java oracle date timestamp

我想将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”

3 个答案:

答案 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