使用SimpleDateFomat和JodaTime有什么优缺点?

时间:2013-03-23 00:52:30

标签: android android-datepicker

我在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的其他几个问题之后:

String to Date/Time object in Android

How can I recognize the Zulu time zone in Java DateUtils.parseDate?

问题:我想知道使用SimpleDateFormat vs Joda Time有什么优缺点?或者你会为我想做什么推荐其他Date课程?

Joda Time确实有一些理由为什么要使用Joda Time,但我对Date类知之甚少,不知道语句的真实性。

1 个答案:

答案 0 :(得分:4)

的SimpleDateFormat

<强>优点

  • 易于使用。我一直都在使用它。
  • 无需额外安装。
  • Android SDK更新会自动进行更新。

示例

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

<强>缺点


JodaTime

<强>优点

  • 跨多个Java平台的类似用法。
  • 支持其他日历,例如佛教和Ethiopic。
  • 自我报告表现更佳。

<强>缺点

  • 需要安装软件包以及Joda.org的更新。

结论

对于我需要的所有日期/时间格式,我对SimpleDateFormat感到满意并将继续使用它。根据我的需要,没有合理的理由让我知道切换到另一个库。

另见Alternatives to SimpleDateFormat for date parsing