Java 显示存储和从数据库读取日期
在我的应用程序中,一个重要的功能是将日期保存到SQLite数据库。在数据库中存储Java中的日期对象的正确方法是什么?从数据库读取日期对象的最佳方式是什么?我是否必须使用util或sql(来自名称空间)日期 此外,该应用程序应该从play store在所有国家/地区发布,因此我希望在正确的位置字符串中显示日期。如果我想在文本视图中显示字符串,如下所示:Java 显示存储和从数据库读取日期,java,android,sqlite,date,Java,Android,Sqlite,Date,在我的应用程序中,一个重要的功能是将日期保存到SQLite数据库。在数据库中存储Java中的日期对象的正确方法是什么?从数据库读取日期对象的最佳方式是什么?我是否必须使用util或sql(来自名称空间)日期 此外,该应用程序应该从play store在所有国家/地区发布,因此我希望在正确的位置字符串中显示日期。如果我想在文本视图中显示字符串,如下所示: Freitag, 06.03.2012 // Germany Friday, 03.06.2012 // US (don'
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
在安卓系统中,有没有办法在设置中设置的当前位置创建如上所述的日期字符串?我希望尽可能少地使用不推荐的方法。来自:
时间字符串可以采用以下任意格式:
1) YYYY-MM-DD
所以您应该使用该格式在数据库中插入日期。
当您想在android中显示日期时,可以查询数据库(获取格式为YYYY-MM-DD的行)
之后,您可以按照您想要的方式格式化该值。例如,如果您想要2012年6月3日,星期五
,您可以这样做:
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
中,您有2013年5月7日星期二
。如果您将区域设置更改为locale.derman
您将获得Dienstag,07.05.2013
通常最简单的方法是将unix时间戳存储在数据库中,然后在渲染时按您喜欢的方式进行格式化。非常感谢您的帮助。如果我想为当前位置输入正确的日期字符串,是否有方法从Android获取SimpleDataFormat
第二个参数的当前位置?是的,您可以使用它来了解用户首选的区域设置。