gpt4 book ai didi

java - 将日期和时间添加到 Calendar 对象

转载 作者:行者123 更新时间:2023-12-01 13:40:36 35 4
gpt4 key购买 nike

我正在尝试向 Calender 对象添加 X 天数(从 1 到 180 天),然后构建一个新的时间戳以保存在由新生成的日期 + (时间 = 现在时间)组成的数据库中。下面的代码是我到目前为止所做的,所以有人可以帮助我完成使用新生成的日期+(时间 = 现在的时间)生成时间戳的剩余部分所需的任何代码示例吗?

这是我到目前为止使用的代码:

Date todayDate = new Date();        
Calendar c = Calendar.getInstance();

switch(daysToAdd){
case 1:
c.add(Calendar.DAY_OF_YEAR, 7);
break;
case 2:
c.add(Calendar.DAY_OF_YEAR, 14);
break;
case 3:
c.add(Calendar.DAY_OF_YEAR, 21);
break;
case 4:
c.add(Calendar.DAY_OF_YEAR, 30);
break;
case 5:
c.add(Calendar.DAY_OF_YEAR, 60);
break;
case 6:
c.add(Calendar.DAY_OF_YEAR, 90);
break;
case 7:
c.add(Calendar.DAY_OF_YEAR, 180);
break;
default: c.add(Calendar.DAY_OF_YEAR, 7);
}

Date enddate = c.getTime();

最佳答案

您可以根据原始日期对象实例化时间戳。接下来,您需要获取对 Calendar 实例的引用,您正确地使用该实例来执行操作/添加。

Date todayDate = new Date();
Timestamp original = new Timestamp(todayDate.getTime());
Calendar c = Calendar.getInstance();

c.setTimeInMillis(original.getTime());

添加和 switch/case 后,您可以实例化一个新的 Timestamp 实例来验证您的添加:

Timestamp later = new Timestamp(c.getTime().getTime());

假设您可以将天数作为方法参数传递,下面是您修改后的工作代码(假设有硬编码的天数值):

public static void main(String[] args) {
Date todayDate = new Date();
Timestamp original = new Timestamp(todayDate.getTime());
Calendar c = Calendar.getInstance();

System.out.println("Old time : " + original.toString());

c.setTimeInMillis(original.getTime());

int daysToAdd = 5;

switch (daysToAdd) {
case 1:
c.add(Calendar.DAY_OF_YEAR, 7);
break;
case 2:
c.add(Calendar.DAY_OF_YEAR, 14);
break;
case 3:
c.add(Calendar.DAY_OF_YEAR, 21);
break;
case 4:
c.add(Calendar.DAY_OF_YEAR, 30);
break;
case 5:
c.add(Calendar.DAY_OF_YEAR, 60);
break;
case 6:
c.add(Calendar.DAY_OF_YEAR, 90);
break;
case 7:
c.add(Calendar.DAY_OF_YEAR, 180);
break;
default:
c.add(Calendar.DAY_OF_YEAR, 7);
}

Timestamp later = new Timestamp(c.getTime().getTime());
System.out.println("New time : " + later.toString());
}

上述代码的输出为(使用选项 5 添加 60 天):

Old time : 2013-12-29 18:30:41.541
New Date : 2014-02-27 18:30:41.541

关于java - 将日期和时间添加到 Calendar 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20824833/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com