要格式化Android应用程序中的日期,您必须记住,使用Android SDK格式化的日期会考虑区域设置,其中包括国家/地区和语言(这也称为文化)。区域设置在设备的“设置”应用程序中配置。通常,使用设备的区域设置是最佳选择,但对于所有用户都需要查看相同格式的企业应用程序而言,这可能是不可接受的,无论设备的语言如何。此外,保存到文件或数据库的日期应始终具有相同的格式。
以下是处理和格式化日期所涉及的许多类的列表:
java.util.Date
:表示单个日期并比较日期。在Java中,日期对象还包括时间,因此如果您只需要日期,则时间应始终相同(例如午夜),以确保比较将返回预期结果。java.util.Calendar
:从日期中提取日,月和年的数据,并处理日期之间的数学运算。android.text.format.DateFormat
:根据设备的当前区域设置获取日期和时间格式。格式作为java.text.Format
可以与Java格式类一起使用的格式返回。java.text.DateFormat
:表示日期格式。它不应该直接使用,因为它不管理Android语言环境。java.text.SimpleDateFormat
:派生自java.text.DateFormat
,根据指定的格式格式化日期。java.sql.Date/java.sql.Time
:从类中派生的两个类,java.util.Date
用于处理SQL格式的日期以写入数据库或从中读取数据。这些类用于将其拆分java.util.Date
为SQL Date和SQL Time。它们不会在本文中使用,但由于它们源于java.util.Date
,所有与a一起使用的 java.util.Date
将使用a java.sql.Date
或a java.sql.Time
。
这java.util.Date
是时间轴上的一个特定点:它可以检查其日期是在另一个日期之前还是之后,但它不知道它在一个月或一年中是如何拟合的。该java.util.Calendar
班是处理了一年的日历的行为之一:例如,你需要一个Calendar
对象来获取当前日期或时间,知道什么时候一个月开始和结束或检查什么是明年。因此,要获取java.util.Date
当前日期,您必须获取该实例,java.util.Calendar
默认情况下在当前日期和时间初始化。
Date currentDate = Calendar.getInstance().getTime();
之后,如果要显示从日历中检索的日期,则需要使用 android.text.format.DateFomat
返回a 的类获取设备当前区域设置的日期格式java.text.DateFormat
。例如,要在当前区域设置中显示当前日期和时间,可以使用以下代码:
Date currentDate = Calendar.getInstance().getTime();
java.text.DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(this);
String formattedCurrentDate = dateFormat.format(currentDate);
最后,如果您需要使用固定格式格式化日期,您可以为java.util.SimpleDateFormat
该类提供自己的格式:
Date currentDate = Calendar.getInstance().getTime();
java.text.SimpleDateFormat simpleDateFormat = new java.text.SimpleDateFormat("dd/MM/yyyy");
String formattedCurrentDate = simpleDateFormat.format(currentDate);
如何在Android应用程序中使用Java格式化日期
转载https://www.codesocang.com/appboke/39584.html
热门源码