如何在 Java 中使用 SimpleDateFormat 在日文语言环境中显示 AM/PM 字段?

How to display AM/PM field in Japanese locale using SimpleDateFormat in Java?

我想以日语“01:00 午后”的以下格式显示时间

我目前的源码如下

Calendar cal = Calendar.getInstance();
Date date = cal.getTime();
System.out.println("Start Time "+SimpleDateFormat.getTimeInstance(SimpleDateFormat.MEDIUM,Locale.JAPANESE).format(date));

我得到以下输出 开始时间 7:09:37

P.S:我也尝试过将时间格式设置为 "K:mm a" 和 "H:mm a" 。两个都不行。

您已经创建了 SimpleDateFormat 的对象但没有使用它。向此 class 提供 Locale 并查看输出。

Calendar cal = Calendar.getInstance();
Date date = cal.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy a", Locale.JAPANESE);
System.out.println("Start Time "+ sdf.format(date));

输出为:Start Time 10/16/2015 午後

或使用 H:mm a DateFormat 而不是 MM/dd/yyyy a 来获取所需的输出,以防万一 Start Time 13:01 午後

请参阅 this 文档以了解有关 Java 中的 Date Formats 的更多信息。