Java 日期“;“天”;自动递增1
如何使我的日期“DAY”仅在每次获得日期值时自动递增1。 示例:我当前的到期日期是20141031,增量后将更改为20141101Java 日期“;“天”;自动递增1,java,Java,如何使我的日期“DAY”仅在每次获得日期值时自动递增1。 示例:我当前的到期日期是20141031,增量后将更改为20141101 SimpleDateFormat timestampFormat = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat timestampFormat2 = new SimpleDateFormat("dd-MM-yyyy"); String EXPDATE = common.setNullT
SimpleDateFormat timestampFormat = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat timestampFormat2 = new SimpleDateFormat("dd-MM-yyyy");
String EXPDATE = common.setNullToString((String) session.getAttribute("SES_EXPDATE")); // 31- 10-2014
String tempEXPDATE = timestampFormat.format(timestampFormat2.parse(EXPDATE)); //20141031
int intExpdate = Integer.parseInt(tempEXPDATE.substring(6,8)); //30
这对我来说很容易。你可以用
输出:
20141101
下面的代码将帮助您
Calendar cal = Calendar.getInstance();
Date date=timestampFormat.parse(tempEXPDATE);
cal.setTime(date);
cal.add(Calendar.DATE, 1);
String newDate=timestampFormat.format(date);
请注意,我从您的代码中选择了
timestampFormat
和tempEXPDATE
。如果您使用的是Java 8,则可以使用新的日期/时间API。
使用Java 8,您只需使用plusDays()
方法:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
LocalDateTime dateTime = LocalDateTime.parse(yourDateString, formatter);
LocalDateTime plusOneDay = dateTime.plusDays(1);
Java 8:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
Java 7具有:
使用或。谢谢伙计们,问题解决了:)可能是真棒的复制品。。。它起作用了!!万分感谢你!!但是我更改了字符串newDate=timestampFormat.format(date);到java.util.dated1=cal.getTime();EXPDATE=timestampFormat.format(d1);
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import org.threeten.bp.LocalDate;
import org.threeten.bp.format.DateTimeFormatter;
DateTimeFormatter.ofPattern("yyyyMMdd").format(
LocalDate.parse(
"31-10-2014",
DateTimeFormatter.ofPattern("dd-MM-yyyy")
).plusDays(1)
)
// 20141101