当前位置: 首页 > 知识库问答 >
问题:

如何在iOS中用时区保存datetime?

邵凯定
2023-03-14

我真正的问题(TL;DR):

我有一个数据库,其中日期时间以UTC形式存储,如“yyyy-mm-dd hh:mm:ss”。我想用某种类型的DateFormatter(格式为“yyyy-mm-dd hh:mm:ss”的字符串)加上一个时区(UTC)初始化一个对象,以便轻松地转换为我想要的任何时区(在用户的默认时区时间上显示给用户)。我如何在iOS中完成这一点呢?

编辑:假设我有一个有标题和开始时间的班级活动。标题是一个字符串,开始时间应该是什么?

共有1个答案

钱经业
2023-03-14

为此使用dateformatter

let formatter = DateFormatter()
formatter.calendar = Calendar(identifier: .iso8601)
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
formatter.timeZone = TimeZone(secondsFromGMT: 0)

formatter.locale设置用户的当前区域设置,formatter.dateformat设置所需的日期格式。在您的示例中,yyyy-mm-dd hh:mm:ss

简单地说:

let utcDateFromServer = "2017-01-01 22:10:10"
let date = formatter.date(from: utcDateFromServer)
 类似资料:
  • 我已经开始使用推荐的,并不再使用。其中一件我无法粘合的事情是使用持久的cookie存储。我只想在我的连接上附加一个定制的cookie处理程序/管理器来存储cookie。Android文档并没有太大帮助,因为它将有关cookie的主题概括为两行。 我之前一直在使用LoopJ的PersistentCookieStore,效果很好。 关于如何在Android中设置一个持久的cookie存储,我可以附加到

  • 从这里得到帮助-PUT和DELETE-RESTful API Express MongoDB Mongoose 但是得到错误-http://localhost:8080/app/modify/59203c7d9532c34903000002net::ERR_EMPTY_响应,节点服务器停止并出现错误“Collection”。“保存”不是一个函数。

  • 问题内容: 我有数千张在坦桑尼亚拍摄的照片,我想将每张照片的日期和时间存储在MySQL数据库中。但是,该服务器位于美国,当我尝试存储坦桑尼亚的日期时间(在美国的Spring夏时制时间)处于“无效”小时之内时,我遇到了问题。坦桑尼亚不执行夏令时,因此该时间实际上是有效时间。 其他复杂情况是,来自许多不同时区的协作者将需要访问存储在数据库中的日期时间值。我希望他们 总是 以坦桑尼亚的时间出现,而不是出

  • 问题内容: 在SQL Server中,我想创建一个表来节省事件的时间,并希望将其转换为用户选择的时区以进行显示。让我们说,如果在格林尼治标准时间1:00 PM在伦敦发生事件,那就是美国东部标准时间上午8:00。 给定这个例子,我想创建一个框架, 用户可以保存事件和时间的位置(提供事件的时区) 阅读这些事件,并在他喜欢的时区(美国东部时间)中显示时间 如何在SQL Server中完成此操作。 问题答

  • 这似乎是一个非常基本的问题,但我有一个模型(用户),我想存储一个字符串的ArrayList(它们是其他用户的ID)。我这样声明列表: 控制器方法: 和一个非常简单的观点:

  • 我正在尝试导出一些SQLite表数据。我正在获取IOException:/TestFileExport0719a.csv:open失败:EROFS(只读文件系统) 更改后出现以下错误: File outFile=新文件(environment.getExternalStoragePublicDirectory(environment.directory_downloads),outFileName