将 UTC 日期格式转换为本地 nsdate

2024-01-16

我从服务器获取 UTC 时区的字符串日期,我需要将其转换为本地时区。

MY CODE:

let utcTime = "2015-04-01T11:42:00.269Z"    
let dateFormatter = NSDateFormatter()
dateFormatter.timeZone = NSTimeZone(name: "UTC")
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
let date = dateFormatter.dateFromString(utcTime)
println("utc: \(utcTime), date: \(date)")

这打印 -

UTC:2015-04-01T11:42:00.269Z,日期:可选(2015-04-01 11:42:00 +0000)

如果我删除

dateFormatter.timeZone = NSTimeZone(name: "UTC") 

它打印

UTC: 2015-04-01T11:42:00.269Z,日期:可选(2015-04-01 08:42:00 +0000)

我当地的时区是 UTC +3 在第一个选项中我得到 UTC 在第二个选项中我得到 UTC -3

我应该得到

UTC:2015-04-01T11:42:00.269Z,日期:可选(2015-04-01 14:42:00 +0000)

那么如何将UTC日期格式转换为当地时间呢?


以下内容在 Objective-C 中对我有用:

// create dateFormatter with UTC time format
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"]; 
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
NSDate *date = [dateFormatter dateFromString:@"2015-04-01T11:42:00"]; // create date from string

// change to a readable time format and change to local time zone
[dateFormatter setDateFormat:@"EEE, MMM d, yyyy - h:mm a"];
[dateFormatter setTimeZone:[NSTimeZone localTimeZone]];
NSString *timestamp = [dateFormatter stringFromDate:date];

我保留这两个网站来方便地转换不同的时间格式:http://www.w3.org/TR/NOTE-datetime http://www.w3.org/TR/NOTE-datetime

http://benscheirman.com/2010/06/dealing-with-dates-time-zones-in-objective-c/ http://benscheirman.com/2010/06/dealing-with-dates-time-zones-in-objective-c/

在 Swift 中它将是:

// create dateFormatter with UTC time format
  let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
        dateFormatter.timeZone = NSTimeZone(name: "UTC") as TimeZone?
        let date = dateFormatter.date(from: "2015-04-01T11:42:00")// create   date from string

        // change to a readable time format and change to local time zone
        dateFormatter.dateFormat = "EEE, MMM d, yyyy - h:mm a"
        dateFormatter.timeZone = NSTimeZone.local
        let timeStamp = dateFormatter.string(from: date!)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 UTC 日期格式转换为本地 nsdate 的相关文章

  • Swift - 我可能已经删除了 Apple Swift Packages 集合

    我对 swift 和 XCode 很陌生 昨天我正在开发一个项目 想尝试一下某人制作的自定义日期选择器 所以我转到 添加包 并粘贴 GitHub 链接并添加它 我已经在我的项目中添加了一个名为 KeychainAccess 的不同包 方式
  • 在 Swift 中有条件导入基于 iOS 版本的框架(如 Speech)?

    有没有办法有条件地导入框架Swift基于运行时 iOS 版本 特别是 我有一个部署目标为的应用程序iOS 8 我想使用新的Apple Speech应用程序中的框架 如果在运行时可用 我知道 available iOS 10 代码部分的指令
  • SwiftUI DisclosureGroup 单独展开每个部分

    我正在使用 Foreach 和 DisclosureGroup 来显示数据 每个部分都可以展开 折叠 然而 它们都在同时扩展 折叠 如何单独展开 折叠每个部分 struct TasksTabView View State private v
  • iOS - UIBarButtonItem - 后退按钮标题垂直位置不调整

    我正在设置自定义字体UIBarButtonItem对象使用UIAppearance 这工作正常并正确设置字体 但是 我确实需要调整按钮标题的垂直位置以适应新字体的大小 UIBarButtonItem appearance setTitleT
  • React Native Detox:无法接受系统警报弹出的位置权限

    使用以下命令从命令行启动应用程序detox test configuration ios sim debug 通过代码启动应用程序await device launchApp permissions location always noti
  • 在 iOS 上构建 WebRtc

    我按照以下说明成功地在 MAC 上构建了 WebRTC http www webrtc org reference getting started http www webrtc org reference getting started
  • 有 Haskell 日期库吗?

    Haskell 中是否有一个函数允许我输入日期的组成部分 如字符串表示形式或日月年组成部分 我可以从中获取信息 如星期几 一个月中的天等 我在网上查了一下 看起来有很多自定义库 但我希望 ghci 10 6 4 的标准前奏库中有一个没有很好
  • HttpClient setReachabilityStatusChangedBlock 声明没有接口

    尝试使用 AFNetworkings ReachabilityStatusChanged 但得到 HTTPCLIENT 没有可见的 interface 声明选择器 setReachabilityStatusChangeBlock 但Http
  • 核心数据executeFetchRequest消耗大量内存

    我正在核心数据数据库中插入 cca 100 000 条记录 数据库包含 3 个实体 球员 俱乐部 球员俱乐部 实体之间存在关系 玩家 gt 玩家俱乐部俱乐部 在 PlayerClub 中插入时 我注意到插入大约 50 000 条记录后会消耗
  • 强制本地化图像或图像资产

    正如在这个问题中 如何强制 NSLocalizedString 使用特定语言 https stackoverflow com questions 1669645 how to force nslocalizedstring to use a
  • ios GPUImage,小尺寸图像处理效果不好?

    我正在尝试为 OCR 准备图像 我使用 GPUImage 来完成 代码工作正常 直到我裁剪图像 裁剪后我得到了糟糕的结果 作物面积 https www dropbox com s e3mlp25sl6m55yk IMG 0709 PNG h
  • iOS UITableView:使用 CAGradientLayer 将背景颜色指定为渐变

    我刚刚开始使用 Xcode 4 3 中的主从视图模板 我试图更改主视图的背景颜色并将其设置为颜色渐变 这是我尝试过的 Colors m import Colors h implementation Colors UIColor naviga
  • iOS 中第一响应者的正式定义是什么?

    据我所知 第一响应者对象是根据输入活动等接收回调信号 并且它将沿着链向上冒泡 直到找到愿意处理它的响应者 但更正式地说 第一响应者的范围是什么 例如 它是应用程序范围的响应程序吗 似乎作为第一响应者只是说这个特定的对象将收到交互通知 其他响
  • 在 XCode 中本地化 HTML 文件

    我有一个本地化的 iOS 应用程序 我希望在其中包含一些本地化的 HTML 文件 我不知道该怎么做 目前 我的文件夹结构如下所示 myapp en lrproj Localizable strings fr lrproj Localizab
  • AST 文件格式错误或损坏

    我有一个问题 我不知道为什么会发生这种情况 但很可能是因为我错误地按了 移动到垃圾箱 到某些系统框架 我收到一条错误消息 AST 文件格式错误或损坏 找不到 AST 文件引用的文件 Users username myProject Quar
  • Swift 字典映射 - 闭包中的 init

    我有 Swift 字典 private var params String AnyObject 这包含查询项目 例如 lat 40 lon 100 我想将这本词典映射到NSURLQueryItem大批 我想让它 迅速 params map
  • 如何在复杂的层次结构中上下同步 CALayer 和 UIView 动画

    See 如何在整个层次结构中管理 CALayer 动画 https stackoverflow com questions 26917908 how to manage calayer animations throughout a hie
  • -[_SwiftValueencodeWithCoder:]:无法识别的选择器发送到实例

    尝试使用 NSCoder 时出现错误 玩家 swift class Player NSObject NSCoding private var playerName String private var playerScore Int pri
  • Mysql:将数据库从本地时间转换为UTC

    我需要从本地时间 ut UTC 转换现有的 日期时间字段 数据库 这些值和日期时间存储在时区为 CET 1 夏令时 2 的服务器上 选择我使用的数据时UNIX TIMESTAMP 它神奇地补偿了一切 即时区偏移和夏令时 如果我正确阅读了文档
  • 在启动屏幕中执行代码已更新

    在原始启动屏幕中执行代码 https stackoverflow com questions 27642016 execute code in launch screen 现在默认的LaunchScreenXcode 项目中的文件已更改为

随机推荐

  • JavaScript 中的多语言警报消息

    我有一个 php Web 应用程序多语言 我有一个 php 变量 它可以告诉 Web 应用程序的当前语言 我需要在客户端验证用户输入 并且错误消息会通过 JavaScript 警报显示 例如 如果 php 语言变量是 french 我需要将
  • 应用内购买沙盒 - 地址无效

    我已经在很多应用程序中实现了应用内购买 并在沙盒环境中测试了所有这些应用程序 现在 我正在开发该应用程序的应用程序内购买之一 我昨天测试了该应用程序并且工作正常 但到今天早上 现有的沙箱帐户都没有用于应用程序内测试 我跟着其中一个苹果thr
  • 修改函数内的变量[重复]

    这个问题在这里已经有答案了 假设我有一个内联脚本标记 其代码非常简单 如下所示 function var test This is a simple test function modifyTest s s Modified test te
  • C# 中的 C++ CString 等效项

    是什么C 相当于 MFC 的CString 大概System String 但为了提供更多有用的信息 System String实例是不可变的 连接 子字符串 等实际上创建了新的字符串对象 因此使用字符串实例作为构建输出的缓冲区是一个非常糟
  • Android Studio 2.0 IllegalArgumentException:按钮不存在0

    在Ubuntu上使用android studio 2 0稳定版本和之前的1 5版本 我总是遇到这个异常 有任何想法吗 It appears in the EventLog None
  • 在 Visual C++ 中使用 dllimport

    我已经有几年没有做过任何 Windows 编程了 而且我对如何使用 dllimport 有点生疏了 我有一些类似的事情 extern C declspec dllimport int myFunct int main cout lt
  • 玩笑测试(ReferenceError:google未定义)ReactJS和Google Charts

    我正在使用他们的 CDN 中的 google script 标签 尝试过 body 和 head 我的应用程序中的 Google Chart 工作正常 但是它导致我的 Jest 测试失败 里面的
  • 在 PHP 的 Heredoc 中使用变量

    我是 PHP SQL 的新手 我尝试在定界文档中使用变量 因为我需要输出大量文本 我只包含第一句话 因为它足以说明问题 我的问题是在定界文档中 变量 见下文 data game name and data game owner 不被识别为变
  • XSLT 中的矩阵转置

    我正在尝试从这种输入
  • 计算通过图的路径数

    我正在寻找独特的数量x从特定节点开始的图的长度路径 但是我有一个限制 即在任何路径上没有节点被访问一次以上 For example take the following graph 如果我追求从 5 开始的 3 长度路径的数量 答案是 9
  • 为什么许多语言区分大小写?

    为什么许多语言区分大小写 仅仅是继承问题吗 C 区分大小写 因为 C 是 Java 区分大小写 因为 C 是 等等 还是背后有更务实的原因 我认为您不会得到比 因为该语言的作者认为这样更好 更好的答案 就我个人而言 我认为他们是对的 我不想
  • 如何在 Windows 2003 任务计划程序中为任务创建无限持续时间

    我正在尝试创建无限期的任务 在 Windows Server 2008 上 如果我不指定持续时间 则持续时间被假定为无限 但是 在 Windows Server 2003 上 必须指定持续时间 并且等于或大于间隔 目前 如果要重复很长时间
  • “构建 flutter 工具......”需要很长时间

    由于 Android Studio 的一些问题 我使 flutter 缓存失效 当我尝试时flutter upgrade 我陷入了 构建颤动工具 阶段 flutter upgrade Downloading Dart SDK from Fl
  • 如何更改 PyQt 或 PySide 中的最小化事件行为?

    我正在开发一个 Qt 应用程序并更改了关闭行为closeEvent虚函数 https deptinfo ensip univ poitiers fr ENS pyside docs PySide QtGui QWidget html hig
  • Xcode 方案构建目标中的构建顺序

    为了为我的程序构建安装程序 我添加了一个 安装程序 Xcode 项目 目标 它将所有需要的二进制文件复制到临时位置 然后运行必要的逻辑来构建包 我遇到的问题是我想将此安装程序项目直接映射到其他一些项目 以便每次我尝试构建安装程序项目时都会构
  • 如何使用 HUE 查找 CDH(Cloudera 的发行版,包括 Apache Hadoop)版本

    我只能访问 HUE 并且正在尝试使用 HUE 找出 CDH 版本 你能帮我吗 我没有找到直接的答案 但这就是我在 Hue 中找到 CDH 版本的方法 我的CDH版本是5 14 2
  • LINQ - GroupBy 键,然后将每个分组的项目放入单独的“存储桶”中

    我有一个这样的项目列表 public class Item public int ItemId get set public string ItemName get set public int ListId get set 1 Test1
  • HostingEnvironment.QueueBackgroundWorkItem 使用 ASP.Net 线程池或其他线程池?

    我有一个 ASP Net 应用程序 其中后台任务运行使用HostingEnvironment QueueBackgroundWorkItem如下面的代码所示 Question 下面代码中安排的后台任务是使用 ASP Net 线程池线程中的线
  • Asp.Net MVC 默认路由

    我的默认路线是这样定义的 routes MapRoute Default Route name controller action id URL with parameters new controller Home action Inde
  • 将 UTC 日期格式转换为本地 nsdate

    我从服务器获取 UTC 时区的字符串日期 我需要将其转换为本地时区 MY CODE let utcTime 2015 04 01T11 42 00 269Z let dateFormatter NSDateFormatter dateFor