Android 获取后一天0点的时间戳
时间: 2024-03-08 19:47:21 浏览: 170
可以使用以下代码获取当前时间的后一天0点的时间戳:
```java
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.DAY_OF_YEAR, 1);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
long timestamp = calendar.getTimeInMillis();
```
其中,`calendar.add(Calendar.DAY_OF_YEAR, 1)` 表示将当前时间加一天,`calendar.set(Calendar.HOUR_OF_DAY, 0)` 表示将小时设置为0,`calendar.set(Calendar.MINUTE, 0)` 表示将分钟设置为0,`calendar.set(Calendar.SECOND, 0)` 表示将秒数设置为0,`calendar.set(Calendar.MILLISECOND, 0)` 表示将毫秒数设置为0。最后,通过 `calendar.getTimeInMillis()` 方法获取时间戳。
相关问题
Android 获取后一天0点的时间戳跨月份
可以使用 Calendar 类来获取后一天0点的时间戳,即将当前时间加上一天,并将时分秒清零。示例代码如下:
```java
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_MONTH, 1); // 加上一天
calendar.set(Calendar.HOUR_OF_DAY, 0); // 将时分秒清零
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
long timestamp = calendar.getTimeInMillis() / 1000; // 获取时间戳,单位为秒
```
这段代码会将当前时间加上一天,并将时分秒清零,最终得到的时间戳是后一天0点的时间戳,即跨月份的情况也能处理。注意要将获取到的时间戳除以1000,以得到单位为秒的时间戳。
Android 根据时间戳获取后一天0点的时间戳
可以使用以下代码根据给定的时间戳获取后一天0点的时间戳:
```java
long timestamp = System.currentTimeMillis(); // 给定的时间戳
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(timestamp);
calendar.add(Calendar.DAY_OF_YEAR, 1);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
long nextDayTimestamp = calendar.getTimeInMillis();
```
其中,`calendar.setTimeInMillis(timestamp)` 表示将给定的时间戳设置为当前时间,`calendar.add(Calendar.DAY_OF_YEAR, 1)` 表示将当前时间加一天,`calendar.set(Calendar.HOUR_OF_DAY, 0)` 表示将小时设置为0,`calendar.set(Calendar.MINUTE, 0)` 表示将分钟设置为0,`calendar.set(Calendar.SECOND, 0)` 表示将秒数设置为0,`calendar.set(Calendar.MILLISECOND, 0)` 表示将毫秒数设置为0。最后,通过 `calendar.getTimeInMillis()` 方法获取时间戳。
阅读全文