2017-05-23 6 views
-1

オブジェクトから日付を取得し、フォーマットを変更して必要な行を削除しようとしています(文字列ではなく)日付フィールド自体として日付値を使用します。日付形式を変換し、Javaの新しい形式の日付フィールド(文字列またはprintlnではなく)に保存する方法

SimpleDateFormatのformat()メソッドを使用して書式が変更されています。しかし、SimpleDateFormatのparse()メソッドを使用してこの文字列値を日付フィールドに戻すときに、デフォルトの形式が使用されています。 Spring MVCを使用し、このdate-MM/dd/yyyyをモデル属性としてJSPファイルに渡す必要があります。

PFBコードとその行を処理した後に生成される日付形式のコメント。

Date date1 = student.getDateOfBirth();  // Tue May 16 00:00:00 IST 2017 
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); 
String dateStr = dateFormat.format(date1); // 05/16/2017 
Date date2 = format.parse(dateStr);   // Tue May 16 00:00:00 IST 2017 
student.setDateOfBirth(date2); 
+0

日時オブジェクトは、文字列ではなく*フォーマットではありません。 –

+0

投稿する前にこのトピックに関する[6000件の既存の質問と回答](https://stackoverflow.com/search?q=Java+date+format)のいくつかを調べてください。 –

答えて

2

Date目的は、フォーマットを表す任意状態を有していません。 It's just an instant in timedate1に正しい値がある場合は、それをフォーマットして解析することは全く意味がありません。

Dateを後で特定の形式にする場合は、のようにフォーマットする必要があります。

+0

応答のためにJonに感謝します。 "MM/dd/yyyy"の形式で日付フィールドに日付を保存できないということですか? –

+1

@JeromeJoseph:フィールドの型が 'Date'の場合、noを格納できるのは瞬間です。助けがあれば、それを 'int'フィールドのように考えることができます - 「このint型を16進数で格納したい」または「このint型をバイナリに格納したい」と言うことはできません。整数。 –

関連する問題