java - Java 中 Jalali Calendar 的一个好的日期转换器?

标签 java date localization calendar jalali-calendar

<分区>

我正在开发一个 Java 应用程序并且我有一个 timeStamp(在 long 中)。我可以轻松地使用此代码将其更改为公历日期:

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(timeStamp);

但我需要 Jalali 日历中的日期。我搜索但没有找到任何好的图书馆。您知道用于转换(或从 timeStamp 创建 Jalali 格式的日期)的可靠且优秀的库吗?我不需要实现或算法,因为这个问题有太多错误并且有很多规则,我需要一个可靠的解决方案

最佳答案

为了更好的本地化和语言支持,使用 ICU 通常很方便IBM 的(Unicode 国际组件)库。

这些 API 类似于标准 Java API,但增加了对本地化和国际化的额外支持(例如时间和日历问题、排序、格式化规则和具有适当 Unicode 支持的正则表达式实现)。

要创建波斯日历并以波斯语输出格式化日期,您可以使用例如做这样的事情:

import com.ibm.icu.text.DateFormat;
import com.ibm.icu.util.Calendar;
import com.ibm.icu.util.ULocale;

...

ULocale locale = new ULocale("fa_IR@calendar=persian");

Calendar calendar = Calendar.getInstance(locale);
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL, locale);

System.out.println(df.format(calendar));

这将输出:

5月10日 10:00 20:00 10:00 10:00 10:00 10:00 10:00 10:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00000000000000000000000000000000000000000000000人人的人。

关于java - Java 中 Jalali Calendar 的一个好的日期转换器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27578886/

相关文章:

java - Spring MVC : Using model. Controller中的addAttribute()发送各种Lists到Ajax方法

java - JVM 堆 - 为什么 S0/S1 的大小会随着时间的推移而减小?

Javascript getUTCDate 在选择 2013/04/01 时返回 "31"作为日期?

ios - 如何本地化数据源路径?

localization - Angularjs 和 $locale

java - 在java中双击鼠标事件

java - 如何将 List[java.lang.Long] 转换为 List[scala.Long]

php - 获取两年之间的月份并获取每年所有月份的总和

java.text.simpledateformat 在 Android 项目中的行为与 java SE 1.8 中不同

android - 在有问题地将应用程序区域设置更改为 RTL 语言后,如何在不重新启动 Activity 的情况下刷新 View