gpt4 book ai didi

java - Android/Java - 以天为单位的日期差异

转载 作者:IT老高 更新时间:2023-10-28 11:48:40 24 4
gpt4 key购买 nike

我正在使用以下代码获取当前日期(格式为 12/31/1999,即 mm/dd/yyyy):

Textview txtViewData;
txtViewDate.setText("Today is " +
android.text.format.DateFormat.getDateFormat(this).format(new Date()));

我还有另一个日期格式为:2010-08-25 (i.e. yyyy/mm/dd),

所以我想找到日期与天数之间的差异,我如何找到天数之间的差异?

(换句话说,我想找出CURRENT DATE - yyyy/mm/dd 格式化日期之间的区别)

最佳答案

不是一个真正可靠的方法,最好使用JodaTime

  Calendar thatDay = Calendar.getInstance();
thatDay.set(Calendar.DAY_OF_MONTH,25);
thatDay.set(Calendar.MONTH,7); // 0-11 so 1 less
thatDay.set(Calendar.YEAR, 1985);

Calendar today = Calendar.getInstance();

long diff = today.getTimeInMillis() - thatDay.getTimeInMillis(); //result in millis

这是一个近似值...

long days = diff / (24 * 60 * 60 * 1000);

要从字符串中解析日期,您可以使用

  String strThatDay = "1985/08/25";
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
Date d = null;
try {
d = formatter.parse(strThatDay);//catch exception
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


Calendar thatDay = Calendar.getInstance();
thatDay.setTime(d); //rest is the same....

不过,既然您确定日期格式...您也可以对其子字符串执行 Integer.parseInt() 以获得它们的数值。

关于java - Android/Java - 以天为单位的日期差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3838527/

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