ios - Dateformatter 为特定日期字符串返回 Nil

标签 ios objective-c nsdateformatter

我正在使用 SeatGeek API,它们的日期以下列格式返回:

"date_tbd" = 0;
"datetime_local" = "2014-02-08T19:15:00";
"datetime_tbd" = 0;
"datetime_utc" = "2014-02-09T01:15:00";

我正在尝试将它们转换为更具可读性的内容,例如 Jan 18。我的代码如下:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[dateFormatter setDateFormat:@"yyyy-MM-ddTHH:mm:ss"];

NSDate *date = [dateFormatter dateFromString:fullDateTime];
[dateFormatter setDateFormat:@"Mmm dd"];

cell.eventDate.text = [dateFormatter stringFromDate:date];

但是,日期为空。因此,eventDate 标签为空。

有什么想法吗?我发现自己经常与这些 DateFormatters 作斗争。谢谢。

最佳答案

字母 T 应该按字面匹配,因此必须将其括起来 在第一个日期格式的单引号中:

[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];

第二个日期格式应该是

[dateFormatter setDateFormat:@"MMM dd"];

MMM 代替 Mmm 作为月份缩写。

关于ios - Dateformatter 为特定日期字符串返回 Nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21154979/

相关文章:

ios - 有没有办法将 iPhone 键盘设置为全部大写而不通过委托(delegate)

ios - 来自 UIDatePicker 的工作日

iphone - iOS6 的 NSDateFormatter 问题?

ios - 我想创建自定义日历,所以我使用 JTAppleCalendar 并希望在 Collection View 单元格中显示日期

ios - NSOperation & NSOperationQueue 取消

ios - 从文本字段中删除所有非 a-zA-Z 和非数字字符串

ios - 核心文本中的垂直文本对齐

iphone - iOS 按添加日期对文件夹中的文件进行排序

ios - 如何将文件更新到 QuickBlox iOS 中的内容模块

ios - 使用 RESTKit 将 url 参数映射到对象