2

ユーザーが日付と時刻を選択できるように、Android で minSdkVersion="8" および targetSdkVersion="17" のボタンを作成しています。onClick (selectDate) メソッドを次のように使用します。

public void selectDate(View view) {
    DialogFragment newFragment = new DatePickerFragment();
    newFragment.show(getSupportFragmentManager(), "DatePicker");
}

public static void populateSetDate(int year, int month, int day) {
    m_selectDateBtn.setText(month + "/" + day + "/" + year);
}

public static class DatePickerFragment extends DialogFragment implements
        DatePickerDialog.OnDateSetListener {

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {

        return new DatePickerDialog(getActivity(), this, m_year, m_month,
                m_day);
    }

    public void onDateSet(DatePicker view, int year, int month, int day) {
        populateSetDate(year, month, day);
    }
}

ボタンに保存される日付テキストを解析する方法について、stackoverflow に関する他のいくつかの質問を見た後:

Android の文字列から日付/時刻オブジェクトへ

Java DateUtils.parseDate でズールー語のタイム ゾーンを認識するにはどうすればよいですか?

質問: SimpleDateFormat とJoda Timeを使用する利点と欠点は何ですか? または、私がやりたいことに対して、他にどの Date クラスをお勧めしますか?

Joda Timeには、Joda Time を使用する何らかの理由がありますが、Date クラスについてあまり詳しくないため、ステートメントがどれほど真実であるかを知ることができません。

4

1 に答える 1

4

SimpleDateFormat

利点:

  • 使いやすい。いつも使っています。
  • 追加のインストールは必要ありません。
  • 更新は、Android SDK の更新で自動的に行われます。

final Date curDateTime = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("hh:mma, MMM. dd");
String text = formatter.format(curDateTime);

短所:


JodaTime

利点:

  • 複数の Java プラットフォームで同様の使用法。
  • 仏教やエチオピアなどの追加のカレンダーをサポートします。
  • パフォーマンスが向上したと自己申告。

短所:

  • パッケージのインストールと、おそらく Joda.org からの更新が必要です。

結論

私が必要としていたすべての日付/時刻のフォーマットについて、私は満足してSimpleDateFormatおり、それを使い続けます. 私のニーズでは、別のライブラリに切り替えることを認識している正当な理由はありません。

関連項目:日付解析のための SimpleDateFormat の代替

于 2013-03-23T03:09:03.290 に答える