0

文字列 Date を Java で Timestamp に変換したい。以下は私が書いたコードです。渡される日付値は19-SEP-2013の形式です。

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
Date date = dateFormat.parse(tcmo.getCtsDate());
ps.setTimestamp(ctr++, new Timestamp(date.getTime());

変数ctrは既に宣言されています。psPreparedStatementオブジェクトです。後のコードにはps.executeUpdate().

tcmo.getCtsDate()2013 年 9 月 19 日という値を返します。

データベースは、 2013-09-19 00:00:00.0の形式のタイムスタンプのみを受け入れることができます

スローされる例外はUnparseable Date "19-SEP-2013". 誰かがこれをクリアするのを手伝ってくれますか?

4

3 に答える 3

0

これは、Java を初めて使用する多くのプログラマーを陥れる「落とし穴」です。フォーマット文字mMで、用です..

のフォーマット文字列"yyyy-mm-dd"は実質的にyears-minutes-days.

フォーマット文字列を に変更する"yyyy-MM-dd..."と、問題が解決します。

于 2013-09-13T03:31:38.267 に答える