我正在尝试格式化给定区域设置new Locale("mk", "MK")的日期。区域设置有效,它会正确返回国家/地区名称和语言。我想使用自定义字符串,在我的例子中是"E,kk:mm“或"EEEE,kk:mm”。我希望输出是"сабота,12:00",但得到的是"7,12:00“。
这就是我使用它的方式,我尝试了很多方法,但它们似乎都表现得一样。
SimpleDateFormat sdf = new SimpleDateFormat("EEEE, kk:mm", new Locale("mk", "MK));
sdf.format(new Date());
// output: 7, 12:30我尝试过的另一种方法
Calendar calendar = Calendar.getInstance(new Locale("mk", "MK"));
calendar.setTimeInMillis(new Date().getTime());
DateFormat.format("EEEE, kk:mm", calendar);
// output: Saturday, 12:30我也尝试过使用java.text.DateFormat代替android类,但是没有变化。
手机的地区设置为英语,但这是一个本地化的应用程序,我想以固定的地区格式显示日期。
我已经调查了很多关于这个问题的问题,但是我找不到答案。我对预定义的格式不感兴趣,我想使用我自己的格式,我希望日期/月份名称的格式符合输入语言环境。
发布于 2012-02-11 21:52:50
NickT更快:-),所以只需补充他的答案:如果你想看到你的区域设置在安卓上受支持,运行:
for (Locale l:Locale.getAvailableLocales()) {
Log.d(l.getDisplayCountry(),l.toString());
}你会看到,马其顿不在名单上。
https://stackoverflow.com/questions/9239937
复制相似问题