我是Android Studio的新手,正在尝试将日期和时间选择器中的用户选择存储为日期,以便使用Joda Time相互减去2个日期。我创建了一个名为"timeselected"的变量,它将包括所有用户的选择,但是目前它存储为字符串,我需要将其更改为Date数据类型。如果有人能提供帮助,将不胜感激。
代码为:
String Stimeselected = ""+(yearNow) + (monthNow) + (dayNow) + (hourNow) + (minuteNow);
如果我理解你很好,你需要将选定的时间和日期转换为日期格式,所以使用simpleDateFormat
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy hh:mm", Locale.ENGLISH);
而不是像String Stimeselected = ""+(yearNow) + (monthNow) + (dayNow) + (hourNow) + (minuteNow);
那样保存它,而是使用String Stimeselected = day + "/" + (month + 1) + "/" + year+ " " + hour + ":" + minute ;
最后解析字符串Date date = formatter.parse(Stimeselected )
来自 Android 开发者日期参考:
Date(int year, int month, int date, int hrs, int min, int sec)
从 JDK 版本 1.1 开始,替换为
Calendar.set(year + 1900, month, date, hrs, min, sec)
或
GregorianCalendar(year + 1900, month, date, hrs, min, sec).
或者专门针对乔达日期时间:
DateTime(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour)