将 ISO 8601 转换为 NSDate

2024-03-29

我有一个来自服务器的时间戳,如下所示:

2013-04-18T08:49:58.157+0000

我尝试删除冒号,我尝试了所有这些:

将 ISO 8601 时间戳转换为 NSDate:如何处理 UTC 时间偏移? https://stackoverflow.com/questions/5185230/converting-an-iso-8601-timestamp-into-an-nsdate-how-does-one-deal-with-the-utc

为什么 NSDateFormatter 无法解析 ISO 8601 格式的日期 https://stackoverflow.com/questions/7925038/why-nsdateformatter-can-not-parse-date-from-iso-8601-format

这是我所在的位置:

+ (NSDate *)dateUsingStringFromAPI:(NSString *)dateString {


    NSDateFormatter *dateFormatter;
    dateFormatter = [[NSDateFormatter alloc] init];

    //@"yyyy-MM-dd'T'HH:mm:ss'Z'" - doesn't work
    //@"yyyy-MM-dd'T'HH:mm:ssZZZ" - doesn't work
    //@"yyyy-MM-dd'T'HH:mm:sss" - doesn't work 

    [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
    [dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];

    // NSDateFormatter does not like ISO 8601 so strip the milliseconds and timezone
    dateString = [dateString substringWithRange:NSMakeRange(0, [dateString length]-5)];

    return [dateFormatter dateFromString:dateString];
}

我最大的问题之一是,上面的日期格式真的是 ISO 8601 吗?我从人们那里看到的所有示例的格式都略有不同。有些有...157-0000,其他人最后什么也没有。


这对我有用:

NSString *dateString = @"2013-04-18T08:49:58.157+0000";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
// Always use this locale when parsing fixed format date strings
NSLocale *posix = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[formatter setLocale:posix];
NSDate *date = [formatter dateFromString:dateString];
NSLog(@"date = %@", date);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 ISO 8601 转换为 NSDate 的相关文章

  • Objective-C 继承中@synthesize/@property 的使用

    如果您有一个带有实例变量 foo 的类 A 该类具有 property synthesize 指令 并且类 B 继承自类 A 那么它是否还需要 property synthesize foo 我问的原因是因为当我尝试使用 B 类的 foo
  • 使用线程安全单例初始化代码时代码执行停止

    为了利用全局变量和方法 我实现了 Singleton 作为一种健康的编码实践 我跟着苹果文档 http www johnwordsworth com 2010 04 iphone code snippet the singleton pat
  • C++ 引用类型作为 Objective-C++ 中的实例变量

    Objective C 中禁止将 C 引用类型用作实例变量 我该如何解决这个问题 您不能明智地使用引用作为实例变量 因为无法初始化实例变量并且无法重新放置引用 另一种选择可能是简单地使用 可能是智能的 指针 另一种让您更接近 C 行为的可能
  • 在 xcode 中使用线程调用函数

    我在 xcode 中创建了一个线程 并且给出了从该线程调用的函数名称 但我的问题是 给 call 的函数名称没有被调用 知道何时在该函数中放置断点 code NSThread myThread myThread start self per
  • iOS App Today 扩展未上传到物理设备

    我正在为我的应用程序创建一个今日小部件http budgt ch http budgt ch因为一些用户要求快速访问关键功能 初步 扩展在 iOS 模拟器上运行良好 安装如下 1 安装最新的容器应用程序 2 安装以 今天 为容器的扩展 但是
  • CoreMediaIO,错误更新的属性 kCMIODevicePropertyDeviceIsRunningSomewhere

    当某些进程开始使用相机时 我需要接收一个事件 我通过 CMIOObjectGetPropertyData 完成此操作 但它不能正常工作 只有第一次访问时才是正确的值 我还尝试使用 CMIOObjectAddPropertyListenerB
  • UIAlertController 在 iOS 9 中不工作

    I have added the UIAlertController code showing login and password textfields it works for iOS 8 but in iOS 9 not works
  • 如何在iPhone应用程序中的类结构中实现主键和外键表数据[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何连接sqlite数据库中的两个表数据 if sqlite3 open dbPath UTF8String database SQL
  • 保存录制的 AVAudioRecorder 声音文件:现在怎么办? (iOS、Xcode 4)

    在我的应用程序中 我希望用户能够录制一个声音文件并播放它 然后保存该声音文件以供以后使用 我用了本教程 http www techotopia com index php Recording Audio on an iPhone with
  • NSHTTPCookieStorage 是否跨应用程序持续存在?

    所以我只是好奇 NSHTTPCookieStorage 是否跨应用程序持久存在 或者仅在当前应用程序本地 我希望在另一个应用程序中收集的一些 cookie 可以在搜索应用程序中访问 是这样的吗 谢谢 PS 这是在 iPhone 或 iPad
  • NSMutableArray 实例变量内存管理

    我正在做最后一点内存管理整理 但有些东西我不明白 我已经检查了所有文档 Stack Overflow 等 但仍然不明白 我怀疑这与数组有关 我有一个NSMutableArray作为实例变量 我用它来保存从另一个数组中的对象创建的对象 vie
  • 释放 Core Foundation 对象引用

    我是否需要释放 Core Foundation 对象来清理内存 如果是这样 怎么办 例如 在代码中 ABAddressBookRef addressBook ABAddressBookCreate CFArrayRef peopleArra
  • Objective-C:在哪里定义宏以便随处可用?

    我有一个 iOS 应用程序 它在许多视图控制器中使用相同的字符串 数字等 所以我认为最好在一个文件中定义这些常量并在所有视图控制器实现中使用它 优点是更改一个数字 我只需要做一次 而不是在所有视图控制器中都使用该数字 实际上 我的 h 文件
  • 最近打开的应用程序[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有什么方法可以获取最近打开的应用程序 例如 4 个 的列表吗 如果是这样 怎么办 可可麦克 看看LaunchServices LSSh
  • UITableview 中的水平和垂直滚动[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 I want to make a lineup for a festival You can see what I want to a
  • 在 Objective-C 中比较 2 个字符串

    我写了以下代码 if depSelectedIndice gt 1 comSelectedIndice gt 1 NSLog depart elemet d depSelectedIndice NSLog depart elemet d c
  • 从 UIImagePickerController 相机视图推送 viewController

    我正在开发一款消息应用程序 类似于 WhatsApp 用户可以互相发送文本和图像消息 当用户想要发送图像时 他可以从相机胶卷中选择一张图像 也可以用相机拍摄一张图像 这就是我介绍的方式UIImagePickerController对于这两种
  • 在 iOS 上将 NSString 转换为 NSDate 的正确方法?

    我一直在使用此方法将常规 NSString 对象转换为 NSDate 但尝试向 Apple 提交更新 但遭到拒绝 在 iOS 中还有什么其他方法可以做到这一点 NSString date str 2011 08 12T12 20 00Z N
  • 覆盖层不与 UITableView 一起滚动 - iOS

    我有一个 UITableView 类 它使用以下方法在转到下一个屏幕时调用加载覆盖 问题是这个加载屏幕不随列表滚动 所以如果你滚动一点并单击某些东西 加载屏幕不会显示 因为它位于顶部 如何让加载屏幕始终保持在 UITableView 的顶部
  • 水平 UICollectionView 单行布局

    我正在尝试使用以下命令设置简单的水平布局UICollectionView 兜圈子却没有达到预期的结果 所以任何指针或例子将不胜感激 我粘贴经常更改的代码但没有成功可能没什么意义 该图像显示两行 第一行是单个项目 尺寸正确并且在中心正确对齐

随机推荐

  • Javascript + HTML - 在后台加载图像(异步?)

    我发现了许多描述 javascript 图像加载的主题 但并不完全是我正在寻找的内容 我目前正在以正常方式加载 html 中的图像 例如 img src images big image jpg 这会导致网页上有空白区域 从上到下填充有加载
  • iOS 6 - 如何获得“释放刷新”动画?就像在邮件中一样?

    在邮件应用程序中 我们现在可以drag the view down and release to refresh 如下图所示 这是我可以从 SDK 获得的标准东西吗 Thanks 使用新的iOS6UIRefreshControl https
  • 如何在 Slim 模板中渲染 HTML

    我正在尝试渲染一个前面带有图标的链接 我在用着Slim https github com stonean slim模板引擎以及引导CSS http twitter github com bootstrap base css html ico
  • 如何模拟数据库故障以进行测试(在 Ruby on Rails 中)

    通过某些监视工具 例如 Monit 通过心跳消息来监视应用程序是一种常见的设置 如果应用程序正在运行并且一切正常 它会返回 我还活着 消息 如果数据库失败或 Web 服务器挂起 它不会返回任何内容或返回内部服务器错误 HTTP 状态代码 5
  • Jupyter 笔记本中的函数单元测试?

    我有一个 Jupyter 笔记本 我打算反复运行 里面有函数 代码结构是这样的 def construct url data return url def scrape url url fetch url extract data retu
  • 在 Cython 中共享扩展类型以实现静态类型

    我将 Python 类转换为 pyx 文件内的扩展类型 我可以在另一个 Cython 模块中创建这个对象 但是我无法进行静态类型处理用它 这是我的课程的一部分 cdef class PatternTree cdef public Patte
  • 用于过滤 Django 列表的下拉选择选项

    来自 Angular 这很容易做到 但我不确定从哪里开始创建一个将从对象列表中过滤的下拉表单 基本上 我有下面的代码 它将拉入并显示所有房地产列表 我想创建一个下拉菜单 其中有两个选择 精选 和 新列表 当用户选择其中一个时 列表将过滤掉并
  • F# 模块间相互递归

    对于 F 中的递归 现有文档清楚地说明了在只有一个函数调用自身或一组物理上相邻的函数相互调用的特殊情况下如何执行递归 但一般情况下 不同模块中的一组函数需要相互调用 该怎么做呢 我认为在 F 中没有办法实现这一点 通常可以以不需要这样做的方
  • 函数定义的类外声明中不可能完全限定类名

    该程序会导致不必要的解析贪婪死胡同 struct float4x4 class C float4x4 M float4x4 C M return float4x4 8 1 错误 float4x4 中没有名为 C 的成员 您的意思只是 C 吗
  • 扩展 CodeIgniter 控制器时出错[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在尝试
  • 如何格式化运算符 C++ Visual Studio 之间的空格?

    我想要实现的是寻找是否存在一种方法来格式化 C Visual Studio 在我的例子中为 2012 中运算符之间的空格 例如 用 C 编写以下代码行 int number 10 Then hitting Ctrl K Ctrl D in
  • Web.Debug.config 和 Web.Release.Config 文件的用途是什么?

    我刚刚升级到 Visual Studio 2010 和 MVC 2 0 我注意到 Web config 附加了两个附加文件 这些文件是否用于指定调试和发布特定设置 以便您不会弄乱主 Web config 如果我在调试和发布 Web conf
  • JSP gzip 输出流

    我知道我可以使用类似的东西来压缩输出流 OutputStream outA response getOutputStream outWriter new PrintWriter new GZIPOutputStream outA false
  • 如何使用Spring Data Jpa实现批量更新?

    如何使用Spring Data Jpa实现批量更新 我有一个商品实体 对于不同的用户级别 有不同的价格 例如 goodsId level price 1 1 10 1 2 9 1 3 8 当更新商品时我想批量更新这些价格 如下所示 Quer
  • 基于 webkit 的浏览器的 CSS 规则

    我有下一个 CSS 代码 mgheader letters display inline block margin left 55px margin top 45px position absolute mgheader letters d
  • 运行 Web 角色(Web 应用程序)的 Azure 云服务内存问题(Gen2)

    我有一个关于运行 MVC 应用程序的 Web 角色的高内存使用率的问题 使用简单注入器作为 DI 实体框架 6 用于 DAL 应用程序作为 Web 角色在 Azure 云服务上运行 具有 2 个标准 A2 实例 2 个核心 3 5 GB R
  • 将 WMI 调用转换为 CIM 调用

    我正在编写的代码应该启动当前可用于使用 CIM 的服务器的任何补丁 由于我的网络需要 DCOM 协议 我必须使用 CIM 我使用 以便于查看 以下 wmi 代码有效 ComputerName Foo System Management Ma
  • 如何使用Windows设备避免DLL劫持

    我开发了一个 Win32 应用程序 它调用使用 Windows 单元的 Win API 我相信这会调用Windows的系统库 例如kernel32 dll versions dll等 但安全审查员表示存在与预加载DLL劫持相关的安全问题 我
  • 来自一维像素阵列的 NSImage?

    我的程序中有一个大型一维动态数组 它表示磁盘上的 FITS 图像 即它保存图像的所有像素值 数组的类型是double 目前 我只关心单色图像 由于 Cocoa 不直接支持 FITS 格式 因此我使用 CFITSIO 库读取图像 这是可行的
  • 将 ISO 8601 转换为 NSDate

    我有一个来自服务器的时间戳 如下所示 2013 04 18T08 49 58 157 0000 我尝试删除冒号 我尝试了所有这些 将 ISO 8601 时间戳转换为 NSDate 如何处理 UTC 时间偏移 https stackoverf