在用户区域显示日期和时间

Posted

技术标签:

【中文标题】在用户区域显示日期和时间【英文标题】:Display date AND time in user locale 【发布时间】:2011-02-28 08:40:00 【问题描述】:

我知道我可以使用android.text.format.DateFormat.getDateFormat() 来格式化我的日期,并使用android.text.format.DateFormat.getTimeFormat 来格式化我的时间,但是如何格式化日期时间呢?类似于来自java.text.DateFormatgetDateTimeInstance 方法。

我目前只是连接getDateFormatgetTimeFormat 的格式化程序的结果,但我不知道用户更喜欢哪种方式显示他们的日期和时间。

【问题讨论】:

【参考方案1】:

您只需要字符串表示吗?如果是,请查看DateUtils.formatDateTime(Context context, long millis, int flags):

public static String formatDateTime (Context context, long millis, int flags)

输入:android.text.format.DateUtils

【讨论】:

谢谢,这正是我所需要的。 这不显示秒数。【参考方案2】:

为了扩展答案,这是一个功能示例

DateUtils.formatDateTime(context, epochTimeInMs, DateUtils.FORMAT_ABBREV_MONTH | DateUtils.FORMAT_SHOW_DATE);

这将打印Apr 8 用于美国区域设置,或8 de abr 用于西班牙区域设置

您可以在DateUtils documentation查看有效标志的完整列表

【讨论】:

以上是关于在用户区域显示日期和时间的主要内容,如果未能解决你的问题,请参考以下文章

Android日期时间控件DatePickerDialog和TimePickerDialog

javascript日期格式

如何根据语言环境仅显示日期的日期和月份?

怎么更改电脑日期格式

设置日期/时间输入字段的默认视图,覆盖用户区域设置?

Android - 显示不同日期格式的月份名称