如何将NSObject从NSDictionary转换为NSString?

时间:2011-02-04 00:01:29

标签: iphone objective-c cocoa cocoa-touch

NSObject *url = [item objectForKey:@"link"];

这是来自NSObject“项目的NSDictionary。我需要将NSObject转换为NSString

因为我应该使用url来表示字符串。

我该怎么做?

感谢您的回复。

2 个答案:

答案 0 :(得分:4)

NSString *url = (NSString*)[item objectForKey:@"link"];

答案 1 :(得分:4)

Max具有正确的转换语法,但为了安全起见,您需要在运行时进行某种实例检查,因为在Objective-C的编译时不可能确保对象的类型在数组或字典是你所期待的:

NSObject *obj = [item objectForKey:@"link"];
if ([obj isKindOfClass:[NSString class]]) {
   NSString *stringValue = (NSString *)obj;
   // Do something with the NSString
} else {
   // You can alternatively raise an NSException here.
   NSLog(@"Serious error, we expected %@ to be an NSString!", obj);
}