java - 如何从纪元毫秒检索季节

标签 java datetime

我有一个以秒为单位的时间戳,例如1543845960 。我需要从这个时间戳中检索一个季节。我该怎么做?

ZoneId zone = ZoneId.systemDefault();
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(zone);
String dt = df.format(Instant.ofEpochMilli(timestamp*1000));

是否有任何内置方法可以按区域获取季节?例如。 winter , spring , summerautumn .

最佳答案

不可能。首先,季节或多或少是一种文化事物。因此,时间不一定取决于时区,或者季节“开始”的时间可能会有所不同。

此外,时区一般与季节没有太大关系。时区基于经度边界,季节基于地球自转轴的倾斜度。这意味着北半球和南半球的季节是反周期的。因此,当北半球进入夏季时,南半球就进入冬季。

因此,这个问题不是一个可以通用实现的问题,具体取决于时区。

关于java - 如何从纪元毫秒检索季节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53596019/

相关文章:

java - 如何将列表中具有相同值的两个字段的对象合并到一个简化列表中?

java - 如果有多个这样的数字,如何输出keySet中最大的数字?

MYSQL 一天中的第一个和最后一个日期时间

java - 在 Java 中创建 bytea 数组以传递给 Postgresql 存储过程

java - 如何从 firebase/Android 检索子级的数据子级

java - XOM 规范化耗时过长

C# 比较一天中两个时间的最佳方法

python - 按日期和时间查询存储在 MongoDB 中的数据

c# - 使用可用时间和不可用时间的历史记录,查找某个时间范围内的可用时间

c# - 计算两个日期时间之间经过的工作时间