3

要件があります。Date オブジェクトを書式設定された Date オブジェクトに変換したい。

つまり、

`Date d = new Date();System.out.println(d);' 

出力: 2012 年 4 月 5 日木曜日 11:28:32 GMT+05:30

出力を05/APR/2012のようにしたい。また、出力オブジェクトは文字列ではなく日付でなければなりません。明確でない場合は、より明確に投稿します

ありがとうございました。

4

3 に答える 3

7

サードパーティの API は必要ありません。DateFormatを使用して、日付形式パターンを提供することで日付を解析/フォーマットするだけです。サンプル コードは次のようになります。

Date date = new Date();
DateFormat df = new SimpleDateFormat("dd/MMM/yyyy");
String formattedDate = df.format(date);

System.out.println(formattedDate.toUpperCase());

デモランはこちら。

于 2012-04-05T06:14:43.840 に答える
1

答える前に、OPがデータベースオブジェクトを表すために実際にPOJOを使用していることを他の人に知らせます。彼のPOJOの1つに日付型フィールドが含まれています。そして、彼は日付をオラクル形式にしたいと考えていますが、日付オブジェクトのままです。(OPのコメントはこちらから

Dateクラスを拡張してオーバーライドするだけですpublic String toString();

public class MyDate extends Date
{
    @Override
    public String toString()
    {
        DateFormat df = new SimpleDateFormat("dd/MMM/yyyy");
        String formattedDate = df.format(this);
        return formattedDate;
    }
}

そして、POJO で Date オブジェクトを初期化します。

Date databaseDate=new MyDate();
// initialize date to required value.

現在、databaseDate は Date オブジェクトですが、必要な場所に必要な形式を提供します。

編集:データベースは、プログラミング言語のデータ型とは何の関係もありません。POJO がデータベースに挿入されると、すべての値が文字列に変換されます。また、オブジェクトを文字列に変換する方法は、そのクラスの toString メソッドで定義されています。

于 2012-04-05T07:44:22.043 に答える
0

彼は System.out.println() で Date を使用したいと考えているので、Date クラスを拡張して toString() をオーバーライドすることができます。

コードは次のとおりです。

import java.util.Date;


 class date extends Date {

    int mm,dd,yy;
    date()
    {

        Date d = new Date();
        System.out.println(d);
        mm=d.getMonth();
        dd=d.getDate();
        yy=d.getYear();

    }

    public String toString()
    {  Integer m2=new Integer(mm);
    Integer m3=new Integer(dd);
    Integer m4=new Integer(yy);
        String s=m2.toString() + "/"+ m3.toString() + "/" + m4.toString();

        return s;
    }


}

public class mai
{
public static void main(String... args)
{

    date d=new date();
    System.out.println(d);

}

}
于 2012-04-05T06:30:40.777 に答える