java - 取 3 个整数,创建一个日期

标签 java date integer

我正在尝试采用 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);
}

非常感谢您提供的任何帮助。

最佳答案

试试这个,注意月份从零开始,所以我们需要减去一个以正确指定月份:

Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month-1);
calendar.set(Calendar.DATE, day);
Date date = calendar.getTime();

或者这个:

Calendar calendar = Calendar.getInstance();
calendar.set(year, month-1, day);
Date date = calendar.getTime();

或者这个:

Date date = new GregorianCalendar(year, month-1, day).getTime();

第一种方法为您提供更多控制,因为它允许您设置日期中的其他字段,例如: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);

关于java - 取 3 个整数,创建一个日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10843965/

相关文章:

java - 从 Ruby 脚本执行 Ruby Gem

Java 将日期格式从自定义日期更改为 MM dd yyyy

javascript - 我不明白 JavaScript 中的设置日期方法是如何工作的

java - 在没有字符串比较的情况下以数学方式查找数字子字符串

java - 在 Windows 中使用 jmx 和 jconsole for Solr

java - while循环出错

java - 如何按顺序随机播放图像?

sql - 在 MySQL 中加入过去最近日期的表

python - OpenMDAO 的 SimpleGADriver 中自动计算的具有整数值的位

python - 通过匹配整数的第 n 位数字来返回 Pandas 数据帧中的行?