OADate 转localdate
时间: 2023-08-15 18:13:09 浏览: 139
LocalDate和Date的相互转化
OADate 是一种以基准日期为1899年12月30日的浮点数表示日期的方式。要将 OADate 转换为 LocalDate,可以使用以下方法:
```java
import java.time.LocalDate;
import java.time.ZoneOffset;
import java.time.temporal.ChronoUnit;
public class OADateToLocalDate {
public static void main(String[] args) {
double oaDate = 44222.0; // 示例 OADate 值
// 计算从基准日期到 OADate 的天数
long days = (long) oaDate;
// 将基准日期加上天数得到目标日期
LocalDate baseDate = LocalDate.of(1899, 12, 30);
LocalDate targetDate = baseDate.plusDays(days);
System.out.println("OADate: " + oaDate);
System.out.println("LocalDate: " + targetDate);
}
}
```
在上面的示例中,我们将 OADate 值设置为44222.0,然后计算从基准日期(1899年12月30日)到 OADate 的天数。接下来,我们将基准日期加上这些天数,得到了目标日期,即转换后的 LocalDate。
请注意,OADate 不包括日期的时间部分。如果你还需要处理时间信息,可以使用 `java.time.LocalTime` 类来表示。
阅读全文