93

SimpleDateFormatクラスで使用可能な日付形式について誰かに教えてもらえますか。

私はAPIを試しましたが、満足のいく答えを見つけることができませんでした。どんな助けでも大歓迎です。

4

4 に答える 4

162

日付と時刻の形式については、以下で詳しく説明します

SimpleDateFormat(Java Platform SE 7)-日付と時刻のパターン

nあなたが作ることができるフォーマットの数があるかもしれません。ex-dd/MM/yyyyまたは、YYYY-'W'ww-uまたは文字を組み合わせて、必要なパターンを実現することもできます。パターン文字は以下の通りです。

  • G-時代指定子(AD)
  • y-年(1996; 96)
  • Y-週の年(2009; 09)
  • M-年の月(7月;7月;07)
  • w-年の週(27)
  • W-月の週(2)
  • D-年の日(189)
  • d-月の日(10)
  • F-月の曜日(2)
  • E-週の曜日名(火曜日;火曜日)
  • u-曜日数(1 =月曜日、...、7 =日曜日)
  • a-AM/PMマーカー
  • H-1日の時間(0-23)
  • k-1日の時間(1-24)
  • K-午前/午後の時間(0-11)
  • h-午前/午後の時間(1-12)
  • m-分(30)
  • s-秒単位(55)
  • S-ミリ秒(978)
  • z-一般的なタイムゾーン(太平洋標準時; PST; GMT-08:00)
  • Z-RFC 822タイムゾーン(-0800)
  • X-ISO 8601タイムゾーン(-08; -0800; -08:00)

パースします:

2000-01-23T04:56:07.000 + 0000

使用する: new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

于 2012-10-08T11:59:13.913 に答える
54

http://www3.ntu.edu.sg/home/ehchua/programming/java/DateTimeCalendar.htmlから取得したサンプルコードをいくつか捨ててみましょう。 その後、理解するまでさまざまなオプションを試してみることができます。

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateTest {
   public static void main(String[] args) {
       Date now = new Date();

       //This is just Date's toString method and doesn't involve SimpleDateFormat
       System.out.println("toString(): " + now);  // dow mon dd hh:mm:ss zzz yyyy
       //Shows  "Mon Oct 08 08:17:06 EDT 2012"

       SimpleDateFormat dateFormatter = new SimpleDateFormat("E, y-M-d 'at' h:m:s a z");
       System.out.println("Format 1:   " + dateFormatter.format(now));
       // Shows  "Mon, 2012-10-8 at 8:17:6 AM EDT"

       dateFormatter = new SimpleDateFormat("E yyyy.MM.dd 'at' hh:mm:ss a zzz");
       System.out.println("Format 2:   " + dateFormatter.format(now));
       // Shows  "Mon 2012.10.08 at 08:17:06 AM EDT"

       dateFormatter = new SimpleDateFormat("EEEE, MMMM d, yyyy");
       System.out.println("Format 3:   " + dateFormatter.format(now));
       // Shows  "Monday, October 8, 2012"

       // SimpleDateFormat can be used to control the date/time display format:
       //   E (day of week): 3E or fewer (in text xxx), >3E (in full text)
       //   M (month): M (in number), MM (in number with leading zero)
       //              3M: (in text xxx), >3M: (in full text full)
       //   h (hour): h, hh (with leading zero)
       //   m (minute)
       //   s (second)
       //   a (AM/PM)
       //   H (hour in 0 to 23)
       //   z (time zone)
       //  (there may be more listed under the API - I didn't check)

   }

}

幸運を!

于 2012-10-08T12:26:52.483 に答える
9
于 2018-11-05T15:49:12.703 に答える
5

ここでフォーマットを確認してください http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

主要

System.out.println("date  : " + new classname().getMyDate("2014-01-09 14:06", "dd-MMM-yyyy E hh:mm a z", "yyyy-MM-dd HH:mm"));

方法

 public String getMyDate(String myDate, String returnFormat, String myFormat)
            {
                DateFormat dateFormat = new SimpleDateFormat(returnFormat);
                Date date=null;
                String returnValue="";
                try {
                    date = new SimpleDateFormat(myFormat, Locale.ENGLISH).parse(myDate);
                    returnValue = dateFormat.format(date);
                } catch (ParseException e) {
                    returnValue= myDate;
                    System.out.println("failed");
                    e.printStackTrace();
                }

            return returnValue;
            }
于 2014-06-13T06:56:38.737 に答える