0

我被这个问题困扰了很久。

我有一个从 RSS 解析器接收的 NSString,我可以在屏幕上成功地 NSlog 它,但是当我尝试将它附加到现有的 NSmutablearray 时,它会导致异常。

这是我的代码。

//mystring is a NSMutableString with some content initialized succesfully

NSString *myDate = [dic objectForKey:@"date"];
NSLog(@"%@ and %@",myString,myDate);
[myString appendString:myDate];

直到 NSLog,myDate 和 myString 都按照我的意愿正确打印在屏幕上,但是 appendString 行会导致错误

[ _NSDate 长度]:无法识别的选择器发送到实例 0*7141a00 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[__NSDate 长度]:......

有人可以帮我吗?

4

1 回答 1

0

您正在调用-appendString:with myDate,这不是字符串。这是一个NSDate. 您不能将其传递给需要字符串的 API。您需要以某种方式将其转换为字符串。这可能最好使用 来完成NSDateFormatter,它使您可以完全控制如何将日期格式化为字符串。

但是,出于测试目的,您可以将最后一行替换为[myString appendString:[myDate description]]它应该停止崩溃。

于 2013-01-11T01:49:50.707 回答