我试图在 Java 中将 unix 时间四舍五入到该月的第一天,但没有成功。示例:
1314057600 (Tue, 23 Aug 2011 00:00:00 GMT)
至
1312156800 (Mon, 01 Aug 2011 00:00:00 GMT)
unix 时间我从文件中读取并将其作为 Long 存储在变量中(名为“valor”的变量)。 到目前为止,我已经能够用它创建一个 Java 时间戳
LocalDateTime timestamp = LocalDateTime.ofInstant(Instant.ofEpochSecond(valor), ZoneId.systemDefault());
并为月初创建一个新的时间戳:
LocalDate key = LocalDate.of(timestamp.getYear(), timestamp.getMonthValue(), 1);
如何获取长整型的新时间戳?
最佳答案
这样的事情听起来像是可行的:
key.atStartOfDay().atZone(ZoneId.systemDefault()).toEpochSecond()
(假设您希望它位于系统的默认时区)。
关于Java:将unix时间(长)舍入到该月的第一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37554929/