日付の文字列形式があります。 Sql Dateに変更する必要があります。そのため、次のコードを使用しました。
String startDate="01-02-2013";
SimpleDateFormat sdf1 = new SimpleDateFormat("dd-mm-yyyy");
Java.util.Date date = sdf1.parse(startDate);
Java.sql.Date sqlStartDate = new Java.sql.Date(date.getTime());
上記のコードを使用して実行すると。次の出力が得られました。
2013-01-01.
ここで、月は正しく変換されません。
問題の場所を教えて、正しい結果を得るためのサンプルコードを提供してください。
mm
は分です。 monthsにはMM
が必要です:
SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy");
気を悪くしないでください-この正確な間違いはたくさん起こります。
mm
「分」の略 。代わりにMM
を使用します。
SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy");
それは文字列をutil dateとsql dateに変換する簡単な方法です
String startDate="12-31-2014";
SimpleDateFormat sdf1 = new SimpleDateFormat("MM-dd-yyyy");
Java.util.Date date = sdf1.parse(startDate);
Java.sql.Date sqlStartDate = new Java.sql.Date(date.getTime());
MM
はminutesを表すため、mm
を使用する必要があります。
monthパターンを生成する方法は2つあります。
SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy"); //outputs month in numeric way, 2013-02-01
SimpleDateFormat sdf2 = new SimpleDateFormat("dd-MMM-yyyy"); // Outputs months as follows, 2013-Feb-01
完全なコーディングスニペット:
String startDate="01-Feb-2013"; // Input String
SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy"); // New Pattern
Java.util.Date date = sdf1.parse(startDate); // Returns a Date format object with the pattern
Java.sql.Date sqlStartDate = new Java.sql.Date(date.getTime());
System.out.println(sqlStartDate); // Outputs : 2013-02-01