我正在尝试获取 3 个单独的整数输入(年、月、日),并获取这 3 个条目并从中形成一个日期对象,以便我可以使用它来比较其他日期。
这是我到目前为止所拥有的,不知道从这里去哪里:
public void compareDates() {
String dayString = txtOrderDateDay.getText();
String monthString = txtOrderDateMonth.getText();
String yearString = txtOrderDateYear.getText();
int day = Integer.parseInt(dayString);
int month = Integer.parseInt(monthString);
int year = Integer.parseInt(yearString);
}
Run Code Online (Sandbox Code Playgroud)
非常感谢您提供的任何帮助。
试试这个,注意月份从零开始,所以我们需要减一才能正确指定月份:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month-1);
calendar.set(Calendar.DATE, day);
Date date = calendar.getTime();
Run Code Online (Sandbox Code Playgroud)
或这个:
Calendar calendar = Calendar.getInstance();
calendar.set(year, month-1, day);
Date date = calendar.getTime();
Run Code Online (Sandbox Code Playgroud)
或这个:
Date date = new GregorianCalendar(year, month-1, day).getTime();
Run Code Online (Sandbox Code Playgroud)
第一种方法为您提供了更多控制权,因为它允许您设置日期中的其他字段,例如:DAY_OF_WEEK, DAY_OF_WEEK_IN_MONTH, DAY_OF_YEAR, WEEK_OF_MONTH, WEEK_OF_YEAR, MILLISECOND, MINUTE, HOUR, HOUR_OF_DAY
等。
最后,为了正确格式化注释中所示的日期,请执行以下操作:
DateFormat df = new SimpleDateFormat("yyyy/MM/dd");
String strDate = df.format(date);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4113 次 |
最近记录: |