【问题标题】:Formatting a date with correct date/time ordering使用正确的日期/时间顺序格式化日期
【发布时间】:2011-03-21 18:11:12
【问题描述】:

这是我第一次在 StackOverflow 上发帖,请多多包涵。

在我目前正在开发的 Android 应用程序中,我必须根据用户的区域设置/日期格式设置格式化从数据库中检索到的 java.util.Date 样式的时间戳。

这听起来很简单,可以使用以下代码来完成:

import android.text.format.DateFormat;
long timestamp = cursor.getLong(dateColumn);
Date date = new Date(timestamp);
String dateFormatted = DateFormat.getMediumDateFormat(context).format(date);

现在,我想在日期旁边显示时间。 也不难,加一下:

String timeFormatted = DateFormat.getTimeFormat(context).format(date);

但是,我在这里遇到了一个问题:我怎么知道首先显示哪个?我用什么分隔符?

在大多数情况下,我猜,将日期放在首位并用空格将两者分开是一个安全的选择。 有没有相当于 J2SE 的 java.text.DateFormat.getDateTimeInstance() 的东西?

【问题讨论】:

    标签: java android datetime date date-format


    【解决方案1】:

    做某事:

    new SimpleDateFormat("yyyy-MM-dd-kkmmss").format(Calendar.getInstance().getTime());
    

    这是当前日期/时间的格式 - 我希望来源是不言自明的

    【讨论】:

    • 感谢您的提示,但这并不能解决我的问题:我想完全按照用户区域设置中的配置方式来格式化组合日期时间。 java.text.DateFormat.getDateTimeInstance 会这样做,但它是标准 Java API,可能无法实现所有 Android 本地化细节。
    猜你喜欢
    • 2017-12-29
    • 2022-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-24
    • 2013-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多