android - SQLite julianday() 和 Android

标签 android sqlite

SQLite 有很好的功能 - julianday。这似乎是存储日期、比较、排序的简单方法......(如果我弄错了 - 为什么?) 但我找不到任何方法来操纵 Android API 中的日期,例如 julianday。 有什么办法(除了自己制作或使用第三方库)将 julianday 转换为 Date 并返回?

最佳答案

SQLite 的 julianday() 唯一看起来非常有用的功能是它能够找出两个日期字符串之间的天数差异。这是可能的,因为可以找到两个日期自儒略历开始以来的天数,并计算它们的差异。知道自公元前 4714 年 11 月 24 日以来经过的天数。除非你当时还活着,否则它本身的用处要小得多,在这种情况下你可能是吸血鬼。

我们也可以在 Java Android 中找到两个日期之间的天数差异,虽然它有点麻烦:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-M-dd");
try {
    Date date1 = sdf.parse("2017-02-21");
    Date date2 = sdf.parse("2017-02-28");

    long diffInMillis = date2.getTime() - date1.getTime();
    int numDays = (int)diffInMillis / 1000*60*60*24;

} catch (ParseException e) {
    e.printStackTrace();
}

关于android - SQLite julianday() 和 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42510198/

相关文章:

android - 如何根据 SDK 版本选择 Activity 从启动器启动?

java - Jsoup:提取内部标签

java - 使用 "ORDER BY"对 SQLite 表进行排序 - Android

sql - Rails 使用 SQL 提前订购

android - 在Ormlite Android中更新数据库的安全方法

sqlite3 准备、绑定(bind)和重置语句

android - 设置滚动条拇指的样式

android - 应用更新后,如何查看之前安装的应用版本的versionCode?

android - Firebase 数据库的常用时间

ios - 如何在 iOS 应用程序中连接 FMDB 中两个不同数据库的两个表