我在我的应用程序中使用Date.toLocaleString()来获取日期的字符串表示 - 我只想要没有时间元素的日期(即2012年4月5日),这可能吗?
然而,我实现了这一点,我需要它是多语言,所以' 5/4/2012'没有好处,因为美国的日期是MM / DD / YYYY,而不是英国的DD / MM / YYYY。
由于
答案 0 :(得分:7)
作为mentioned in the documentation,不推荐使用此方法。相反,您应该使用DateFormat
(例如SimpleDateFormat
或内置的),这样可以轻松指定日期模式。
例如:
// You can specify styles if you want
DateFormat format = DateFormat.getDateInstance();
// Set time zone information if you want.
Date date = ...;
String text = format.format(date);
答案 1 :(得分:3)
我想在评论中引用the Android documentation of DateFormat class:
来回答您的问题大多数呼叫者应避免为此提供自己的格式字符串 class的格式方法,并依赖于正确的本地化方法 由系统提供。 此类'工厂方法返回 适当的本地化DateFormat实例,适用于两者 格式化和解析日期。对于规范文档 格式化字符串,请参阅SimpleDateFormat。