【问题标题】:NSDateFormatter returning NULL on 3rd of three usesNSDateFormatter 在三次使用中的第三次返回 NULL
【发布时间】:2012-05-10 03:41:15
【问题描述】:

好的,这让我感到困惑,我希望一些新的观点可以引导我在这里得出正确的结论......我在尝试使用它的第三个项目上从 NSDateFormatter 得到一个 NULL 返回我似乎无法弄清楚为什么。这是我的代码:

NSDateFormatter *format = [[NSDateFormatter alloc] init];
NSDate *tempDate;

[format setDateFormat:@"MMM dd, yyyy"]; 
tempDate = [format dateFromString:[activePerformance performanceDate]];
[outletPerformanceDate setDateValue:tempDate];

// display performance time and set length

[format setDateFormat:@"hh:mm a"];  
tempDate = [format dateFromString:[activePerformance performanceTime]];             
[outletPerformanceTime setDateValue:tempDate];

这两个都按预期正常工作。然后是这个:

[format setDateFormat:@"MMM dd yyyy"];
tempDate = [format dateFromString:[activeFan birthday]];
[outletFansBirthday setDateValue:tempDate];

它每次都返回 NULL 给 tempDate。运行 NSLogs,我们可以看到 [activeFan 生日] 设置为“1980 年 5 月 2 日”或任何放入变量的日期。由于这不起作用,我将其更改为此进行测试:

[format setDateFormat:@"MMM dd yyyy"];
tempDate = [format dateFromString:@"Jan 22, 1976"];  // TESTING

它仍然每次都返回 NULL。

我认为这些代码行之间可能发生了一些事情(它们不是直接相邻的,而是使用相同的方法),但是与 NSDate、NSDateFormatter 或任何这些对象变量没有任何关系。只有几个 NSTextFields 的出口。

我完全不知所措。任何帮助将不胜感激!

【问题讨论】:

    标签: xcode cocoa null nsdate nsdateformatter


    【解决方案1】:

    您的格式字符串必须与您在 dateFromString: 方法中提供的字符串相匹配。在上一个版本中,您的格式字符串中没有逗号,但您的测试字符串中有逗号(并且可能在 [activeFan 生日] 中。

    【讨论】:

    • ::::BANGS HEAD AGAINST WALL::: 两个小时因为缺少逗号...我知道我需要一个全新的视角...呃。谢谢!
    猜你喜欢
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 2019-05-01
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 2012-06-07
    • 2012-12-25
    相关资源
    最近更新 更多