Java 我有一个12小时格式的时间值(hh:mm:ss a)。现在我想将“的价值”本地化;a「;(上午/下午)以给定语言

Java 我有一个12小时格式的时间值(hh:mm:ss a)。现在我想将“的价值”本地化;a「;(上午/下午)以给定语言,java,localization,Java,Localization,英语中的时间值为凌晨02:34:23 现在,如何在español(墨西哥语)中获得本地化的时间值,即在“es mx”中,AM值也使用java进行本地化 我尝试使用simpleDataFormat.getTimeInstance(int样式,Locale-aLocale)。但只有时间值是本地化的,AM/PM仍然是英文的 注:本地化值也应采用“hh:mm:ss a”格式 有人能帮我一下吗?LocalePlanet解释说,es_MX的AM/PM格式是相同的。 仍然需要更改一种可能的方法来编写包装器方

英语中的时间值为凌晨02:34:23

现在,如何在español(墨西哥语)中获得本地化的时间值,即在“es mx”中,AM值也使用java进行本地化

我尝试使用
simpleDataFormat.getTimeInstance(int样式,Locale-aLocale)
。但只有时间值是本地化的,AM/PM仍然是英文的

注:本地化值也应采用“hh:mm:ss a”格式


有人能帮我一下吗?

LocalePlanet解释说,es_MX的AM/PM格式是相同的。

仍然需要更改一种可能的方法来编写包装器方法,用所需字符串替换AM/PM

public static String dateConverter(Date date) {
   Locale locale = new Locale("es", "MX");
   DateFormat dateFormat = DateFormat.getTimeInstance(DateFormat.DEFAULT, locale);
   String newDate = dateFormat.format(date).replaceAll("AM","myAM").replaceAll("PM","myPM");
   return newDate
}

当您试图为转换设置日期/时间格式时,必须解析输入,这需要两个
DateFormat
对象。一个用于设置输入,另一个用于解析输入。要了解我如何使用
“HH:mm:ss”
KK:mm a
格式化
字符串输入
,请参阅日期和时间模式

你提到你想要它专门为墨西哥格式化。墨西哥的上午/下午时间格式与
en
中的相同,他们使用12小时时间格式。但是,如果您希望将其格式化为
a。m、 
只需将
es\u MX
更改为
es
。更多信息

使用
es
而不是
es\u MX
时的输出:

Time: 02:34 a. m.

到目前为止,你尝试了什么?你期待的是什么而不是上午/下午。请看-@伊斯梅尔实际角度(角度7),局部时间值为02:34:23A。M所以,为了验证这个值,我使用java代码,我将语言和时间值(用英语)传递给它,我希望AM是a。M本地化之后。但是根据您提到的链接,这在使用java时是不可能的。那么,有没有其他方法来实现这一点呢?我尝试了上面的代码片段,但仍然在结果中看到了AM/PM值。使用es作为Locale.forLanguageTag(“es”)@Priya
Time: 02:34 a. m.