0

在我的应用程序中,一个重要的功能是将日期保存到 SQLite 数据库。将Java中的日期对象存储在数据库中的正确方法是什么?从数据库中读取日期对象的最佳方法是什么?我是否必须使用utilsql(来自命名空间)日期?

此外,该应用程序应从 Play 商店在所有国家/地区发布,因此我想在正确的位置字符串中显示日期。如果我想在 TextView 中显示一个字符串,如下所示:

Freitag, 06.03.2012      // Germany
Friday,  03.06.2012      // US (don't know if this is correct for US)

// The 0 befor one numbers is important for me

Android中有没有办法在设置中设置的当前位置创建一个像上面那样的DateString?我想使用尽可能少的弃用方法。

4

1 回答 1

2

SQLite 日期和时间函数

时间字符串可以是以下任何一种格式:

1)YYYY-MM-DD

因此,您应该使用该格式在数据库中插入日期。当您想在 android 中显示日期时,您可以查询数据库(以 YYYY-MM-DD 格式获取一行)。

之后,您可以按照您想要的方式格式化该值。例如,如果您愿意Friday, 03.06.2012,可以这样做:

try {
    String dateString = "2013-05-07";
    SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd",Locale.US);
    Date date = inputFormat.parse(dateString);
    SimpleDateFormat outputFormat = new SimpleDateFormat("EEEE, dd.MM.yyyy", Locale.US);
    String result = outputFormat.format(date);
} catch (ParseException e) {
    e.printStackTrace();
}

现在在result你有Tuesday, 07.05.2013. 如果您将语言环境更改为Locale.GERMAN您将获得Dienstag, 07.05.2013.

于 2013-05-07T20:36:10.717 回答