Есть код для Android,цель выводить имя месяца:
day_of_month = (TextView)findViewById(R.id.day_of_month);
day_of_week = (TextView)findViewById(R.id.day_of_week);
String month_s = String.format("%1$tB",new Date());
String day_s = String.format("%1$tA",new Date());
month.setText(month_s);
day_of_week.setText(day_s);
Все хорошо,кроме падежа месяца:он выводиться как Марта,Февраля,Сентября и т.д,то есть в родительном падеже.Как вывести в именительном:Март,Февраль,Сентябрь?
Благодаря ответу код приобрёл такой вид:
SimpleDateFormat format = new SimpleDateFormat("yyyy;LLLL;dd;EEEE");
String date_string = String.format("%s",format.format(new Date()));
String[] date_array = date_string.split(";");
year.setText(date_array[0]);
month.setText(date_array[1]);
day_of_month.setText(","+date_array[2]);
day_of_week.setText(date_array[3]);
Ответ
По-моему, через String.format - никак. С API 9 можно воспользоваться SimpleDateFormat с параметром "L" (stand-alone month):
SimpleDateFormat format = new SimpleDateFormat( "LLLL" );
System.out.printf( "sdf: %s%n", format.format( new Date() ) ); // sdf: Март
Аналогичный параметр для дня недели - "c", хотя для русского языка это не важно.
Комментариев нет:
Отправить комментарий