重複の可能性:
Java で日付を解析していますか?
Java 文字列から日付への変換
デフォルトでこの形式を返す Date オブジェクトを解析するにはどうすればよいですか:
Nov 22, 1963 00:00:00 PM
この形式に:
Fri Nov 22 1963 00:00:00 GMT-0600
手伝ってくれてありがとう。
重複の可能性:
Java で日付を解析していますか?
Java 文字列から日付への変換
デフォルトでこの形式を返す Date オブジェクトを解析するにはどうすればよいですか:
Nov 22, 1963 00:00:00 PM
この形式に:
Fri Nov 22 1963 00:00:00 GMT-0600
手伝ってくれてありがとう。
SimpleDateFormat ( http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html ) クラスを使用して元の文字列を解析し、SimpleDateFormat クラスで新しい形式を使用してフォーマットした後に snd します。
FastDateFormatは(APIから)「SimpleDateFormatの高速でスレッドセーフなバージョン」です。 これはそれを説明する記事です
SimpleDateFormat sdfDestination = new SimpleDateFormat("E MMM-dd-yyyy hh:mm:ss");
sdfDestination .setTimeZone(TimeZone.getTimeZone("GMT-6").getID());
String strDate = sdfDestination.format(oldDateObject); //pass here your old date object
あなたの質問の言い方は、多くのことを混乱させていることを示しています。
まず第一に、「Date オブジェクトを解析」しません。日付を (テキストとして) 含む文字列をオブジェクトに変換できDate
ます。それが解析と呼ばれるものです。したがって、文字列を解析すると結果はDate
オブジェクトになります。「Date オブジェクトを解析する」わけではありません。
その反対 (Date
オブジェクトを文字列に変換すること) は、formattingと呼ばれます。
Date
オブジェクト自体には形式がありません。数値が単なる数値であるように (固有の形式はありません)、aDate
は単なる日付です。toString()
オブジェクトを (明示的または暗黙的に)呼び出すとDate
、日付は のような既定の形式を使用して出力されますNov 22, 1963 00:00:00 PM
。ただし、形式はDate
オブジェクト自体のプロパティではありません。
Date
を特定の形式で表示するには、DateFormat
オブジェクトを使用して、日付を文字列にフォーマットし、それを印刷することができます。オブジェクトで正確な形式を指定しDateFormat
ます。例えば:
Date date = new Date();
DateFormat df = new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss Z");
String text = df.format(date);
System.out.println(text);
まず、これを使用できるDate
オブジェクトが必要です。これは、このステップに関連する回答です。String
SimpleDateFormat
次に、これDate
をそれぞれのテキスト形式で取得する必要があります。これも次のように使用SimpleDateFormat
します。
Format formatter = new new SimpleDateFormat("your format here");
String dateString = formatter.format(date);