gpt4 book ai didi

java - Android 还剩多少天

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:54:42 24 4
gpt4 key购买 nike

我需要从一个日期到第二个日期执行CountDown Days

例如

CURRENT_DATE:3/1/2013 NEXT_DATE:21/01/2013

然后显示::17 DAYS LEFT

我实现了这样的代码

String inputDateString = "01/22/2013";
Calendar calCurr = Calendar.getInstance();
Calendar calNext = Calendar.getInstance();
calNext.setTime(new Date(inputDateString));

if(calNext.after(calCurr))
{
long timeDiff = calNext.getTimeInMillis() - calCurr.getTimeInMillis();
int daysLeft = (int) (timeDiff/DateUtils.DAY_IN_MILLIS);
dni.setText("Days Left: "+daysLeft);
}
else
{
long timeDiff = calCurr.getTimeInMillis() - calNext.getTimeInMillis();
timeDiff = DateUtils.YEAR_IN_MILLIS - timeDiff;
int daysLeft = (int) (timeDiff/DateUtils.DAY_IN_MILLIS);
}

有没有更好的方法来实现这些目标?

最佳答案

使用 Calendar 的方法:

String inputDateString = "01/22/2013";
Calendar calCurr = Calendar.getInstance();
Calendar day = Calendar.getInstance();
day.setTime(new SimpleDateFormat("MM/dd/yyyy").parse(inputDateString));
if(day.after(calCurr)){
System.out.println("Days Left: " + (day.get(Calendar.DAY_OF_MONTH) -(calCurr.get(Calendar.DAY_OF_MONTH))) );
}

输出:剩余天数:17

要将年份递增 1 ,您可以使用 Calendar.add() 方法

        day.add(Calendar.YEAR, 1);

关于java - Android 还剩多少天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14155928/

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