在PHP中通过< code>date('c')很容易获得ISO 8601日期字符串(例如,< code > 2004-02-12t 15:19:21 00:00 ),但是在Objective-C (iPhone)中如何获得它呢?有没有类似的捷径?
这是我发现的很长的路要走:
NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
dateFormatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZ";
NSDate *now = [NSDate date];
NSString *formattedDateString = [dateFormatter stringFromDate:now];
NSLog(@"ISO-8601 date: %@", formattedDateString);
// Output: ISO-8601 date: 2013-04-27T13:27:50-0700
对于如此核心的东西来说,这似乎是一个非常严格的要求。
作为对maddy答案的补充,ISO 8601的时区格式应该是“ZZZZZ”(5乘以Z),而不是单个“Z”(这是RFC 822格式)。至少在iOS 6上是这样。
(见http://www . unicode . org/reports/tr35/tr35-25 . html # Date _ Format _ Patterns)
iOS 10 引入了新的 NSISO8601DateFormatter
类来处理此问题。如果您使用的是 Swift 3,您的代码将如下所示:
let formatter = ISO8601DateFormatter()
let date = formatter.date(from: "2016-08-26T12:39:00Z")
let string = formatter.string(from: Date())
使用< code>NSDateFormatter:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSLocale *enUSPOSIXLocale = [NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:enUSPOSIXLocale];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZZZ"];
[dateFormatter setCalendar:[NSCalendar calendarWithIdentifier:NSCalendarIdentifierGregorian]];
NSDate *now = [NSDate date];
NSString *iso8601String = [dateFormatter stringFromDate:now];
在斯威夫特:
let dateFormatter = DateFormatter()
let enUSPosixLocale = Locale(identifier: "en_US_POSIX")
dateFormatter.locale = enUSPosixLocale
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"
dateFormatter.calendar = Calendar(identifier: .gregorian)
let iso8601String = dateFormatter.string(from: Date())
谷歌工作表,每个用户有多个子工作表。每个用户都在进行输入,我需要根据数据输入日期/时间计算性能。我使用下面的OneEdit(e)函数,它可以很好地处理1张纸。。。但当我为其他子图纸制作同一脚本的多个副本时。。。它停止工作了。 有人能帮我解决这个问题吗? 提前感谢您阅读我的帖子并帮助我!
我想知道是否有可能确定目前的设备是什么类型的iPhone(例如)?我知道有可能通过 得到模型,它将返回我是否有“iPhone”或“iPod”,但我想知道是否有可能检测/知道我是否有iPhone 3GS和iPhone 4或iPhone 4S(实际上,我真正想做的是确定我是否有3G,因为我正在做大量的图形处理)。 好的,让我知道,谢谢!
有没有办法将ISO8601日期与Java进行比较?比如,知道字符串日期是否是良好的格式,知道月份是否为负数,以及 我还在搜索如何知道互联网上是否有课程可以比较两个ISO8601日期?比如,如果我有:2000-12-12和1999-05-06。我如何比较这两个日期,使之在年、月和日之间有准确的差异?
问题内容: 我正在使用bootstrap-datetimepicker和ISO8601 datetime格式,如其选项部分所述 在我的控制器中 它以(console.log)将数据发送到后端 并保存为数据库 在我的模板中 我在HTML上看到的输出为 但是根据Angular doc,它应该用于格式 我想念的是什么? 问题答案: 现在,我已经创建了一个过滤器 作为依赖项添加为 并用作 并将日期显示为
问题内容: 如何转换此 格式 ( ISO8601格式 ): 2014-03-13T09:05:50.240Z 为此( MySQL DATE格式 ): 2014-03-13 在PHP中? 问题答案: 尝试这个 完整的日期功能文档可以在这里找到:http : //php.net/manual/en/function.date.php PHP函数“ strtotime”不执行任何其他操作,然后将您的时间
我试图在@Singleton SessionBean(EJB 3.1)中获取TransactionManager来控制我的事务范围,因为我必须通过@PostConstruct方法访问数据库。如果发生异常,我不能让容器回滚,因为它会引发TransactionRolledbackException:setRollbackOnly,只从单例后期构造方法中调用。 我正在使用JTA数据源并定义@Transa