如何在Android中正确格式化输出日期

时间:2013-01-12 18:55:04

标签: android sqlite

我正在学校开发一款Android应用程序。我目前正在建一个记事本。我想知道是否有任何方法来获取日期并将其作为日期格式存储到sqlite数据库中然后,当我从数据库中检索它并将其写入我的textview时,我可以显示{{1}如果笔记今天被写入/修改,或hh::mm如果它是(让我们说)昨天写的。更清楚:

  1. 我写了一个笔记
  2. 我得到了日期
  3. 我将所有内容都插入到我的数据库表中
  4. 将数据检索到ListView
  5. 对于每个笔记,我想以正确的格式显示日期,(如果日期是同一天,只显示hh:mm,昨天是昨天写的,否则显示dd / mm / yy
  6. 另外,哪种方式最好将日期存储到数据库中,作为日期格式?我在网上搜索,似乎有几种方法可以做到,哪一种最好?

1 个答案:

答案 0 :(得分:2)

日期可以转换为long值(从1970年1月1日00:00:00 UTC + 0000传递的毫秒数)。

这肯定是最方便的日期陈述:

  1. System.currentTimeMillis()以此格式返回当前日期;
  2. 此格式用于使用AlarmManager;
  3. 设置闹钟
  4. 很容易确定哪个日期更早(仅比较两个长值 - 较少的早期值);
  5. 易于存储在数据库中或使用SharedPreferences
  6. Calendar类是Java中日期操作的标准,也支持这种格式 - 它具有setTimeInMillis()getTimeInMillis()函数。

    有关详细信息,请参阅Calendar类的文档。

    对于不同的日期格式,请查看SimpleDateFormat类。