如何控制DateFormat返回的月和日名称的大小写?
时间:2020-03-05 18:54:29 来源:igfitidea点击:
这是一个快速测试程序:
public static void main( String[] args ) { Date date = Calendar.getInstance().getTime(); System.out.println("Months:"); printDate( "MMMM", "en", date ); printDate( "MMMM", "es", date ); printDate( "MMMM", "fr", date ); printDate( "MMMM", "de", date ); System.out.println("Days:"); printDate( "EEEE", "en", date ); printDate( "EEEE", "es", date ); printDate( "EEEE", "fr", date ); printDate( "EEEE", "de", date ); } public static void printDate( String format, String locale, Date date ) { System.out.println( locale + ": " + (new SimpleDateFormat( format, new Locale( locale ) )).format( date ) ); }
输出为:
`
月份:
zh:九月
es:septiembre
fr:九月
de:9月
天:
zh:星期一
es:月球
fr:伦迪
de:蒙塔格
如何控制名称的大写。由于某种原因,西班牙语和法语似乎总是返回以小写字母开头的名称。
解决方案
回答
我们可能不想更改大写字母-不同的文化将大写不同的单词(例如,在德语中,我们将每个名词都大写,而不仅仅是专有名词)。
回答
并非所有语言都共享英文大写规则。我想我们需要更改API使用的数据,但是非英语客户可能不喜欢它。
about.com关于法国大写
回答
大写规则对于不同的语言是不同的。用法语,月份名称不应大写。