-2

我现在正在编写 iPhone 应用程序。我想按以下格式获取当前日期和时间。

Thu, 18 Apr 2013 01:41:13 

我怎样才能做到这一点?

4

1 回答 1

1

NSDateFormatter Class Reference文档setDateFormat:链接到Data Formatting Guide

Data Formatting Guide中,Date Formatters > Use Format Strings to Specify Custom Formats > Fixed Formats部分链接到*Unicode Technical Standard #35 的附录F。

附录 F,虽然有些迟钝,但告诉你一切:

  • 用于E简短的工作日名称。
  • 用于d当月的某一天。
  • 用于MMM短月份名称。
  • y一年。
  • 使用hh一小时。
  • mm一分钟。
  • 用于ss第二个。

我们可以在不使用 Python 的 Cocoa 绑定编写整个 Objective-C 程序的情况下快速测试这一点:

:; python
Python 2.7.2 (default, Oct 11 2012, 20:14:37) 
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from Cocoa import *
>>> f = NSDateFormatter.new()         
>>> f.setDateFormat_('E, d MMM y hh:mm:ss')
>>> f.stringFromDate_(NSDate.new())
u'Wed, 17 Apr 2013 10:40:25'

在 Objective-C 中,它看起来像这样:

NSDateFormatter *f = [NSDateFormatter new];
f.dateFormat = @"E, d MMM y hh:mm:ss";
NSLog(@"%@", [f stringFromDate:[NSDate new]]);

请注意,创建NSDateFormatter. 如果您要格式化许多日期,您应该创建一次并保留它。

于 2013-04-18T03:41:10.833 回答