-4

この形式の日付を変換しようとしています: "Fri Mar 1, 2013 4:30 PM" を次の形式のタイムスタンプ値に変換しようとしています: yyyy-mm-dd hh:mm:ss

例:

String str = 'Fri Mar 1, 2013 4:30 PM'出力する必要があります:"2013-01-14 23:59:59"

これが私が試したことです:

String string = "January 2, 2010";
Date date = new SimpleDateFormat("MMMM d, yyyy", Locale.ENGLISH).parse(string); 
System.out.println(date);

これは以下を出力します:Sat Jan 02 00:00:00 GMT+05:30 2010

前もって感謝します

4

3 に答える 3

3
String str = "Fri Mar 1, 2013 4:30 PM";          
SimpleDateFormat sdf1 = new SimpleDateFormat("EEE MMM dd, yyyy hh:mm a");
Date date = sdf1.parse(str);
System.out.println("Date Object:" + date);
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm a");
System.out.println("Formatted Date:" + sdf2.format(date));

出力:

日付オブジェクト: Fri Mar 01 16:30:00 EST 2013

フォーマットされた日付: 2013-03-01 16:30 PM
于 2013-02-06T08:37:44.277 に答える
3

日付と時刻を日付として取得していると仮定します。したがって、 SimpleDateFormatterformatのメソッドが必要です。API でより多くのパターンを調べます。

public static void main(String[] args) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:SS");
        Date currDate = new Date();
        System.out.println("Current Date: " + currDate);
        System.out.println("Formatted Date: " + sdf.format(currDate));
}

出力:

Current Date: Wed Feb 06 13:15:19 IST 2013
Formatted Date: 2013-02-06 13:15:750

文字列形式の日付がある場合は、最初に日付で解析してからフォーマットする必要があります。

例:

   String str = "Fri Mar 1, 2013 4:30 PM";
   SimpleDateFormat sdf2 = new SimpleDateFormat("E MMM dd, yyyy HH:mm a"); 
   Date parsedDate = sdf2.parse(str);
   System.out.println("Parsed Date: " + parsedDate);

   sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:SS a");
   System.out.println("Formatted Date: " + sdf2.format(parsedDate));

出力:

Parsed Date: Fri Mar 01 04:30:00 IST 2013
Formatted Date: 2013-03-01 04:30:00 AM
于 2013-02-06T07:43:16.270 に答える