我正在设置闹钟的日历日期。闹钟时间设置了小时、分钟、格式和日期。我还想抓住现在的时间,比较两者之间的差异。所以,如果闹钟时间设置为周三,现在时间是周四,我想知道周四到周三之间有多少天。我还需要时间和分钟。
我尝试过每一个例子,但似乎都不管用。
JAVA方法
private void setAlarm(final int position, int day){
alarmManager = (AlarmManager) context.getSystemService(ALARM_SERVICE);
int amPm = 0 ;
String hourOfDay = mDataset.get(position).getHourOfDay();
String minute = mDataset.get(position).getMinute();
String format = mDataset.get(position).getTimeSet();
if("PM".equalsIgnoreCase(format)){
amPm = 1;
}else{
amPm = 0;
}
Calendar alarmTime = Calendar.getInstance();
alarmTime.set(Calendar.HOUR_OF_DAY, Integer.parseInt(hourOfDay));
alarmTime.set(Calendar.MINUTE, Integer.parseInt(minute));
alarmTime.set(Calendar.AM_PM,amPm);
alarmTime.set(Calendar.DAY_OF_WEEK, day);
Calendar now = Calendar.getInstance();
我确实尝试过这个。
alarmTime = Calendar.getInstance();
alarmTime.set(Calendar.HOUR_OF_DAY, Integer.parseInt(hourOfDay));
alarmTime.set(Calendar.MINUTE, Integer.parseInt(minute));
alarmTime.set(Calendar.AM_PM,amPm);
alarmTime.set(Calendar.DAY_OF_WEEK, day);
Calendar now = Calendar.getInstance();
long millis1 = now.getTimeInMillis();
long millis2 = alarmTime.getTimeInMillis();
long diff = millis1 - millis2;
long diffSeconds = diff / 1000 % 60;
long diffMinutes = diff / (60 * 1000) % 60;
long diffHours = diff / (60 * 60 * 1000) % 24;
long diffDays = diff / (24 * 60 * 60 * 1000);
这只是不太正确。它说是2天,所以我假设它是从闹钟日(星期二)到星期四(今天)。我需要的是从今天(星期四)到星期二。从现在起大约5天。时间应该在5小时左右,但似乎总是12小时。
如何获取当前时间与我设置的报警时间之间的差异。?
我认为“可能”是您的代码的问题的两件事是:
alarmTime.set(Calendar.DAY_OF_WEEK, day);
您是从数据集中获取星期几还是月份中的一天?确保它返回的是星期几或将其更改为DAY_OF_MONTH。
一旦你做到了,你就可以做这样的事情
long millis1 = now.getTimeInMillis();
long millis2 = alarmTime.getTimeInMillis();
//Take the absolute difference between the two millis so you don't get a negative valure
long diff = millis1 > millis2 ? (millis1 - millis2) :(millis2 - millis1);
int days = TimeUnit.MILLISECONDS.toDays(diff)
int hours = TimeUnit.MILLISECONDS.toHours(diff)
int minutes = TimeUnit.MILLISECONDS.toMinutes(diff)
这将给你之间的任何两个时间在毫里的差异。
问题内容: 我知道我可以使用momentjs做任何事情,还可以做一些涉及日期的事情。但是令人尴尬的是,我很难去做一件看起来很简单的事情:得到两次之间的差。 例: 我试过的 我不知道那里的“ 10”是什么。我住在巴西,所以如果相关的话,我们是utc-0300。 结果是持续时间正确的内部值: 所以,我想我的问题是:如何将momentjs持续时间转换为时间间隔?我肯定可以用 但我觉得有一些更 优雅 ,我
问题内容: 我可以使用MomentJs获得两个日期之间的差异,如下所示: 但是,我也想在适用时显示小时(仅当> = 60分钟过去时)。 但是,当我尝试使用以下方法检索工时时数: 它返回的是当前时间,而不是两个日期之间的小时数。 如何获得两个时刻之间的小时数差异? 问题答案: 你近了您只需要使用该方法请参阅docs。
返回两个日期之间相差的天数。 计算 Date 对象之间的差异(以天为单位)。 const getDaysDiffBetweenDates = (dateInitial, dateFinal) => (dateFinal - dateInitial) / (1000 * 3600 * 24); getDaysDiffBetweenDates(new Date('2017-12-13'), ne
本文向大家介绍如何获取iOS中两个日期之间的差异?,包括了如何获取iOS中两个日期之间的差异?的使用技巧和注意事项,需要的朋友参考一下 获得两个日期之间的差异很容易。您应该知道如何在两个日期之间玩。 我们将使用DateFormatter类格式化日期。 DateFormatter的实例创建 NSDate对象的字符串表示形式,并将日期和时间的文本表示形式转换为 NSDate对象。 你可以在这里读更多关
问题内容: 我有两个这样的表: 表格1 表2 我想从 Table1中 选择并插入 Table2中 。 例如: 在表1中,我有这个 在表2中,我想要这个 带有样本数据的表结构 问题答案: 感谢您的架构。它使处理您的问题变得容易。我对您的架构进行了一些更改以利用auto_increment 在这里,我在emp_leave_daywise表上添加了唯一约束,因为id整数上的主键不能确保记录不重复。 em
嗯,我在这里发现了很多这样的问题,试图获得年、月和日的两个日期之间的差异。。。但没有满足我要求的答案。 所以我写了一些计算的东西,它似乎是有效的,但也许这里的一些专家可以进行更正,或者帮助使这更简单。