Android/Java 将 String 日期转换为 long 类型

我需要将格式为dd/mm/yyyy"的字符串转换为长类型.为了将值传递给 android.calendarProvider.

I need to convert a string in the format "dd/mm/yyyy", to a long type. In order to pass the value to the calendarProvider in android.

目前我有:

Calendar calendar = Calendar.getInstance();
long startEndDate = 0;
Calendar currentDateInfo = Calendar.getInstance();
currentDateInfo.set(calendar.get(Calendar.YEAR), calendar.SEPTEMBER, calendar.get(Calendar.DAY_OF_MONTH));
startEndDate = currentDateInfo.getTimeInMillis();

我需要:

long startDate = *Some sort of conversion* EditText.getText();

我已尝试使用 SimpleDateFormat,但在获取正确类型时遇到问题.任何帮助将非常感激.

I've tried using SimpleDateFormat but i'm having problems getting the correct type back. Any help would be much appreciated.

推荐答案

您可以使用以下代码从字符串日期获取长值(自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数),格式为"dd/mm/yyyy".

You can use the following code to get a long value (milliseconds since January 1, 1970, 00:00:00 GMT) from a String date with the format "dd/mm/yyyy".

try {
    String dateString = "30/09/2014";
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
    Date date = sdf.parse(dateString);

    long startDate = date.getTime();

} catch (ParseException e) {
    e.printStackTrace();
}

相关文章