当前位置: 首页 > 面试题库 >

如何在具有字符串数据类型的jtextfield中给定的日期中增加天数

穆丁雨
2023-03-14
问题内容

美好的一天
。我只是想问一下在给定日期中增加天数。我有一个jtexfield(txtStart)和另一个jtexfield(txtExpiry)。我需要在txtExpiry中显示从txtStart中的日期起102天之后的日期。我正在使用KEYRELEASED事件。在我输入txtStart之后,附加的102天的日期应出现在txtExpiry中。

这是我的代码,但仍然是错误的。

private void txtStartKeyReleased(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
    // set calendar to 1 Jan 2007
    int a = Integer.parseInt(txtStart.getText());     
    Calendar calendar = new GregorianCalendar(a,a,a);

     calendar.add(Calendar.DAY_OF_MONTH,102);
     PrintCalendar(calendar);
  }

   private void PrintCalendar(Calendar calendar){
        // define output format and print
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");         
        String date = sdf.format(calendar.getTime());
        long add = Date.parse(date);
        txtExpiry.setText(add);  -----> this part here also has an error.
     }

我的代码仍然不会在txtExpiry中生成日期。提前致谢

收到帮助后,以下是正确的代码:

 private void txtStartKeyReleased(java.awt.event.KeyEvent evt) {
       try {

        Date date1;
        date1 = new SimpleDateFormat("yyyy-MM-dd").parse(txtStart.getText());
        System.out.println(date1);

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");     
        Calendar cal  = Calendar.getInstance();
                      cal.setTime(date1);
                        cal.add(Calendar.DATE, 102);
                        String expDateString = sdf.format(cal.getTime());
                        txtExpiry.setText(expDateString);
     }catch (ParseException ex) {
      Logger.getLogger(ClientInfo.class.getName()).log(Level.SEVERE, null, ex);
     } 
}

问题答案:

yyyy-MM-dd

注意:大写MM

见:
SimpleDateFormat

现在,一旦有了日期实例,就可以Calendar用来进行天算术

Calendar cal = Calendar.getInstance();
cal.setTime(parsedDate);
cal.add(Calendar.DATE, 102);
String expDateString = dateFormatter.format(cal.getTime());


 类似资料:
  • 问题内容: 我想将天数添加到当前日期:我正在使用以下代码: 但是我没有得到适当的日期,而是得到了: 2592000 请提出建议。 问题答案: 这应该是 期望得到一个包含美国英语日期格式的字符串,并将尝试将该格式解析为相对于现在给出的时间戳的Unix时间戳(自1970年1月1日00:00:00UTC以来的秒数)。当前时间(如果未提供)。 而 返回一个字符串,该字符串根据给定的格式字符串使用给定的整数

  • 问题内容: 我正在寻找将给定日期增加工作日数的功能。 假期表 包含假期。另外,星期六和星期日均为非营业日。 我试图创建功能 但是它有时返回不正确的结果: 返回2018-12-10, 但正确的结果是2018-12-11 如何在Postgres 9.1+中创建这样的功能? 问题答案: 关键是生成一系列工作日,并用以下编号对它们进行编号: 测试查询的结果似乎正确: 或者,您可以在循环中找到日期:

  • 问题内容: 我想在特定日期添加一天。我怎样才能做到这一点? 现在,我想在这一天添加一天。 问题答案: 给定一个,你有几种可能性: 解决方案1:你可以为此使用类: 解决方案2:由于该类的各种缺点,你应该认真考虑使用库。使用,你可以执行以下操作: 解决方案3:使用Java 8,你还可以使用新的JSR 310 API(受Joda-Time启发):

  • 问题2:如何将这个日期值从转换为-作为pojo类中的静态方法?将其放入某个外部实用程序类中。 编辑#1:我对这些POJO使用模式。

  • 问题内容: 我的将日期添加一天的代码返回添加日期之前的日期: 添加一天之后的日期应滚动到下个月: 我以前使用过非常相似的代码,我在这里做错了什么? 问题答案: 对于PHP 5.2.0+,您还可以执行以下操作:

  • 问题内容: 我的输入字符串日期如下: 我得到的月份如下: 但是,如何获取给定String日期中月份的最后一个日历日? 例如:对于字符串,输出必须为。 问题答案: Java 8及更高版本。 通过使用where 是的实例。 Java 7及更低版本。 通过使用以下方法: