SimpleDateFormat 不返回大写格式的日期
SimpleDateFormat not returning uppercase formatted date
我正在尝试使用 class SimpleFormattedDate
在我的 Android
应用程序中获取自定义格式的日期,但我找不到模式 returning 大写字母。
这些是我的代码行:
Date today = new Date();
Locale loc = new Locale("it","IT");//Locale.ITALIAN
SimpleDateFormat formatter = new SimpleDateFormat("EEE, MMM d, ''yy", loc);
String output = formatter.format(today);
Toast.makeText(getActivity(), output,Toast.LENGTH_LONG).show();
但这就是我在 return:
中得到的
ven, giu 26, '15
但我想获得这个:
Ven, 26 Giu 2015
您可以通过设置它使用的 DateFormatSymbols 来更改 SimpleDateFormat 输出的字符串。官方教程包含this
的例子
教程中的示例,适用于短工作日:
String[] capitalDays = {
"", "SUN", "MON",
"TUE", "WED", "THU",
"FRI", "SAT"
};
symbols = new DateFormatSymbols( new Locale("en", "US"));
symbols.setShortWeekdays(capitalDays);
formatter = new SimpleDateFormat("E", symbols);
result = formatter.format(new Date());
System.out.println("Today's day of the week: " + result);
首先你的格式化程序应该是:
SimpleDateFormat formatter = new SimpleDateFormat("E , d MMM yyyy",loc);
意大利语的大写规则可能不同,如果您仍想更改它,一种选择是使用 apache commons 中的 wordutils,将依赖项添加到您的 gradle.build
compile 'org.apache.commons:commons-lang3:3.4'
然后就这样做:
output=WordUtils.capitalize(output);
Toast.makeText(this, output,Toast.LENGTH_LONG).show();
我正在尝试使用 class SimpleFormattedDate
在我的 Android
应用程序中获取自定义格式的日期,但我找不到模式 returning 大写字母。
这些是我的代码行:
Date today = new Date();
Locale loc = new Locale("it","IT");//Locale.ITALIAN
SimpleDateFormat formatter = new SimpleDateFormat("EEE, MMM d, ''yy", loc);
String output = formatter.format(today);
Toast.makeText(getActivity(), output,Toast.LENGTH_LONG).show();
但这就是我在 return:
中得到的ven, giu 26, '15
但我想获得这个:
Ven, 26 Giu 2015
您可以通过设置它使用的 DateFormatSymbols 来更改 SimpleDateFormat 输出的字符串。官方教程包含this
的例子教程中的示例,适用于短工作日:
String[] capitalDays = {
"", "SUN", "MON",
"TUE", "WED", "THU",
"FRI", "SAT"
};
symbols = new DateFormatSymbols( new Locale("en", "US"));
symbols.setShortWeekdays(capitalDays);
formatter = new SimpleDateFormat("E", symbols);
result = formatter.format(new Date());
System.out.println("Today's day of the week: " + result);
首先你的格式化程序应该是:
SimpleDateFormat formatter = new SimpleDateFormat("E , d MMM yyyy",loc);
意大利语的大写规则可能不同,如果您仍想更改它,一种选择是使用 apache commons 中的 wordutils,将依赖项添加到您的 gradle.build
compile 'org.apache.commons:commons-lang3:3.4'
然后就这样做:
output=WordUtils.capitalize(output);
Toast.makeText(this, output,Toast.LENGTH_LONG).show();