1

StringMM-dd-yy 形式の 12-28-18 などの日付文字列を含む があります。このパラメータを Oracle データベースのストアド プロシージャに渡したいと考えています。

したがって、この String を に変換しようとしていjava.sql.Dateます。以下は、私が変換する方法です。

DateFormat df = new SimpleDateFormat("MM-dd-yy");
java.util.Date date1 = df.parse(valueobject.getDate());
java.sql.Date date2 = new java.sql.Date(date1.getTime())

しかし、それは につながりParseExceptionます。解析中に失敗する理由を理解できません。これに関するどんな助けも素晴らしいでしょう!

4

3 に答える 3

6

使用valueOf():

String date = "2000-11-01"; // YYYY-MM-DD
java.sql.Date sqlDate = java.sql.Date.valueOf(date);
于 2014-11-23T04:41:03.447 に答える
0

これは私にとってはうまくいきます。おそらくあなたvalueobject.getDate()は文字列を返さないでしょう。チェックしてください!!

SimpleDateFormat format = new SimpleDateFormat("MM-dd-yyyy");
    Date parsed = format.parse("07-15-2013");
    java.sql.Date sql = new java.sql.Date(parsed.getTime());

あなたのコードと似ていて、とてもうまくいきます!

于 2013-07-15T06:27:29.293 に答える
0

これを試して

    DateFormat df = new SimpleDateFormat("EEE MM-dd-yy hh:mm:ss");
    Date d=new Date();
    String date1 = df.format(d);
    java.sql.Date date2 = new java.sql.Date(d.getTime());
    System.out.println(date1);
    System.out.println(df.format(date2));

または

    DateFormat df = new SimpleDateFormat("MM-dd-yy");
    Date d=new Date();
    String date1 = df.format(d);
    java.sql.Date date2 = new java.sql.Date(d.getTime());
    System.out.println(date1);
    System.out.println(df.format(date2));
于 2013-07-15T06:00:04.323 に答える