Van*_*ama 4 java android locale
我有一个问题,用我的语言获得月份名称 - 捷克语.
我想得到月份的名字作为名词,但我总是得到变形的标题.我尝试了许多方法来获得名称,但所有方式都返回了月份名称的变形名称
例如,我想在捷克语"Říjen"中获得十月的名字,但我总是得到"října".
Calendar cal=Calendar.getInstance();
SimpleDateFormat month_date = new SimpleDateFormat("MMMMMMMMM");
String month_name = month_date.format(cal.getTime());
DateFormat formatData = new SimpleDateFormat("d.MMMM yyyy H:mm");
System.out.println(month_name);
System.out.println(String.format(Locale.getDefault(),"%tB", cal));
System.out.println(formatData.format(cal.getTime()));
Run Code Online (Sandbox Code Playgroud)
所有都返回格式错误的我.有没有办法得到正确的月份名称?谢谢
小智 5
您可能已经解决了这个问题,但这是解决方案.我做了一些研究,原因是java.text.DateFormatSymbolsJava 8 的变化(参见兼容性指南).
格式化和独立表单之间存在差异.格式化表格:ledna,února,března等; 独立形式:leden,únor,březen等.
同样根据语言规则,单独的月份名称从较低的字符开始,除非它开始句子.
此代码将为您提供所需的结果.
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
Locale loc = new Locale("cs", "CZ");
System.out.println(cal.getDisplayName(Calendar.MONTH, Calendar.LONG_STANDALONE, loc));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1121 次 |
| 最近记录: |