我想在我的云数据库中将日期存储在一个时区内,然后我的所有用户(其Android设备可能位于世界上任何地方),我希望转换并显示日期,无论其默认Android设置如何是.
这里展示了如何使用以下代码将Java存储为代码中的Java:
System.currentTimeMillis()
1)但是,如何将日期"标准化"为UTC(这是我听到的每个人都说我应该做的)?
2)然后,在从Cloud DB检索到该日期之后,我如何使用Java将该UTC日期转换为安装该应用程序的设备的时区?
从我收集的内容来看,Android可能会自动执行这些操作,但我不确定是什么 - 而且我不确定自己要做什么.有人可以为我澄清上述内容吗?
谢谢.
根据文档System.currentTimeMillis()返回UTC时间戳.换句话说,假设设备在获得时间戳之前已经与时间服务器同步(很可能),它将不包括时区调整.
http://developer.android.com/reference/java/lang/System.html#currentTimeMillis()
同样,如果您检索时间戳并使用Calendar对象,则在使用Calendar时应调整为Locale设备的时间戳Calendar.setTimeInMillis(long milliseconds)
http://developer.android.com/reference/java/util/Calendar.html#Calendar()
http://developer.android.com/reference/java/util/Calendar.html#setTimeInMillis(long)
换句话说,你真的不需要"规范化"这些信息,Linux/Java会为你做这件事.您需要担心的是从电子邮件,消息或其他已经Locale调整过的系统获取时间戳,无论是否正确.这些是困难的时间戳问题.
| 归档时间: |
|
| 查看次数: |
505 次 |
| 最近记录: |