gpt4 book ai didi

android - 使用非英语语言环境时 Joda Time 格式错误

转载 作者:行者123 更新时间:2023-11-30 00:06:12 24 4
gpt4 key购买 nike

我在 Android 中使用 Joda Time 2.9.9。当 Locale 设置为英语时,调用 datetime.monthOfYear().getAsText(locale)datetime.monthOfYear().getAsShortText(locale) 返回格式如下的字符串 FebruaryFeb 分别。

但是当区域设置为西类牙语 (es) 时,它会返回诸如 februaryfeb. 之类的字符串(实际值是西类牙语,我翻译了它们)。

有什么方法可以让它在使用其他语言环境时返回格式良好的字符串,大写且没有点?

还有一个额外的问题:如果没有办法,子类化 datetime 类并格式化字符串是个好主意吗?

最佳答案

Joda-Time 从 JVM 的 DateFormatSymbols 获取此信息,我不确定是否可以通过 API 替换这些信息(可能您可以使用反射来完成,但我个人不喜欢在生产代码中做这些事情)。

无论如何,我认为您可以调整在这个问题中找到的解决方案:Month name in genitive (Polish locale) with Joda-Time DateTimeFormatter

PS:我无法重现错误,代码如下:

DateTime datetime = new DateTime();
System.out.println(datetime.monthOfYear().getAsText(new Locale("es")));
System.out.println(datetime.monthOfYear().getAsShortText(new Locale("es")));

给我“febrero”和“feb”

关于android - 使用非英语语言环境时 Joda Time 格式错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48958618/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com