如何在Time4J库中获取当前日期及Java中当前波斯历日期?
没问题,我来帮你梳理下Time4J里获取当前日期的方法,还有波斯历的实现方式:
获取当前公历日期(Time4J)
在Time4J中,获取当前公历日期最直接的方式是使用PlainDate类的静态方法now(),它默认会采用系统的默认时区来获取当前日期。如果需要指定特定时区,也可以传入对应的时区参数:
// 获取系统默认时区的当前公历日期 PlainDate currentDate = PlainDate.now(); // 指定时区(以上海时区为例)获取当前公历日期 PlainDate currentDateInShanghai = PlainDate.now(TimeZone.of("Asia/Shanghai"));
获取当前波斯历日期(Time4J)
你给出的PersianCalendar jalali = new PersianCalendar();是一种创建波斯历实例的方式,但更推荐使用now()静态方法来直接获取当前时间对应的波斯历日期,这样代码可读性更强,同时也支持指定时区:
// 获取系统默认时区的当前波斯历日期 PersianCalendar currentJalaliDate = PersianCalendar.now(); // 指定时区(以德黑兰时区为例)获取当前波斯历日期 PersianCalendar currentJalaliInTehran = PersianCalendar.now(TimeZone.of("Asia/Tehran"));
另外,如果需要将已有的公历日期转换为波斯历,也可以用from()方法实现:
// 将当前公历日期转换为波斯历 PlainDate gregorianDate = PlainDate.now(); PersianCalendar jalaliFromGregorian = PersianCalendar.from(gregorianDate);
内容的提问来源于stack exchange,提问作者MOHS3N
相关产品推荐
相关产品推荐

