【问题标题】:[NSDateFormatter class]: message sent to deallocated instance[NSDateFormatter 类]:发送到已释放实例的消息
【发布时间】:2013-04-03 10:01:24
【问题描述】:

下面的代码有什么问题?

NSDate *date = [NSDate date];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterShortStyle];
[formatter setTimeStyle:NSDateFormatterMediumStyle];
error.timestamp =  [formatter stringFromDate:date];
[formatter release];

我在下面收到此错误:

 *** -[NSDateFormatter class]: message sent to deallocated instance 0x8c04f00

我该如何解决?

我不使用 ARC。

【问题讨论】:

  • error.timestamp = [[formatter stringFromDate:date]copy];然后检查
  • @Popeye,不,我更新了我的问题。感谢您的指示。
  • 代码似乎是正确的。您在哪一行收到此错误?

标签: ios objective-c cocoa-touch nsdateformatter


【解决方案1】:

您发布的代码似乎是正确的。
您确定从您发布的代码中收到消息吗?
能否设置一个exception breakpoint in Xcode来检查上面的代码是否有问题?

如果你不重复使用 NSDateFormatter,你可以使用下面的类方法在一行代码中获取日期字符串:

[NSDateFormatter localizedStringFromDate:date dateStyle:NSDateFormatterShortStyle timeStyle:NSDateFormatterMediumStyle]

【讨论】:

    猜你喜欢
    • 2011-06-16
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多