简体   繁体   English

从JSON Web服务下载图像时下载的图像时出现OSX App无法识别的选择器错误

[英]OSX App Unrecognized Selector error when downloaded image from a when downloaded image from a JSON web service

In my Mac app I am getting Data from hey JSON web service and one of the fields is an image. 在我的Mac应用程序中,我从JSON Web服务获取数据,并且其中一个字段是图像。 When I do a NSLog(@"%@", [dict valueForKeyPath:@"profileImageDataString"] ); 当我做一个NSLog(@"%@", [dict valueForKeyPath:@"profileImageDataString"] ); I see all of the data and it is correct. 我看到了所有数据,这是正确的。 And I can also put it in a NSURL object like this NSURL *imgUrl = [dict valueForKeyPath:@"profileImageDataString"]; 而且我也可以将其放在这样的NSURL对象中: NSURL *imgUrl = [dict valueForKeyPath:@"profileImageDataString"]; and it is still correct. 而且仍然是正确的。 But when I try this NSData *imgData = [NSData dataWithContentsOfURL:imgUrl]; 但是当我尝试这个NSData *imgData = [NSData dataWithContentsOfURL:imgUrl]; or this NSImage *userImage = [[NSImage alloc] initWithContentsOfURL:imgUrl]; 或此NSImage *userImage = [[NSImage alloc] initWithContentsOfURL:imgUrl]; I get the error unrecognized selector sent to instance. 我收到错误的无法识别的选择器发送到实例。 If I put the data in a NSString, two thirds is cut off at the end. 如果将数据放在NSString中,则三分之二的结尾将被截断。

I am trying to save the Image data from the Jason web service into a text file to that later it can be loaded into a NSImage on in a user settings view. 我正在尝试将Jason Web服务中的Image数据保存到文本文件中,以便以后可以在用户设置视图中将其加载到NSImage中。

Someone tell me what it is that I'm doing wrong? 有人告诉我我做错了什么?

This is the value of profileImageDataString that is returned by the web service; 这是Web服务返回的profileImageDataString的值。

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

The string seems to be a base64 encoded string representation of an image. 该字符串似乎是图像的base64编码的字符串表示形式。

Try to create an NSData object from the string and the image from the data. 尝试从字符串创建NSData对象,从数据创建图像。

NSString *imgDataString = [dict objectForKey:@"profileImageDataString"];
NSData *imgData = [[NSData alloc] initWithBase64EncodedString:imgDataString options:0];
NSImage *userImage = [[NSImage alloc] initWithData:imgData];

And I can also put it in a NSURL object like this NSURL *imgUrl = [dict valueForKeyPath:@"profileImageDataString"]; 而且我也可以将其放在这样的NSURL对象中:NSURL * imgUrl = [dict valueForKeyPath:@“ profileImageDataString”]; and it is still correct. 而且仍然是正确的。

You haven't got an NSURL object. 您没有NSURL对象。 You've got an NSString object. 您有一个NSString对象。 Declaring that your pointer refers to an NSURL and using the untyped getter valueForKeyPath: (or, even, much more correctly, objectForKey: ) does not change the type of the object. 声明您的指针指向一个NSURL并使用未类型化的getter valueForKeyPath:或者,更正确地说,是objectForKey:不会更改对象的类型。

To convert a string to a URL use +[NSURL URLWithString:] . 要将字符串转换为URL,请使用+[NSURL URLWithString:] But what you're showing us isn't a URL. 但是,您向我们显示的不是URL。 So why try to make it one at all? 那么,为什么要完全做到这一点呢?

But when I try this NSData *imgData = [NSData dataWithContentsOfURL:imgUrl]; 但是当我尝试这个NSData * imgData = [NSData dataWithContentsOfURL:imgUrl]时; or this NSImage *userImage = [[NSImage alloc] initWithContentsOfURL:imgUrl];I get the error unrecognized selector sent to instance. 或此NSImage * userImage = [[NSImage alloc] initWithContentsOfURL:imgUrl];我收到无法识别的错误选择器,该选择器已发送到实例。

That's because you're supplying an NSString , which does not implement the same selectors as an NSURL . 那是因为您要提供一个NSString ,它没有实现与NSURL相同的选择器。

If I put the data in a NSString, two thirds is cut off at the end. 如果将数据放在NSString中,则三分之二的结尾将被截断。

No it isn't; 不,不是; however when you log any object, all you get is enough information to help in debugging. 但是,当您记录任何对象时,您所获得的只是足以帮助调试的信息。 Using NSLog is not intended to be a way to store the same amount of data in another form, or indeed to do anything strictly well defined other than help you to debug. 使用NSLog并不是要以另一种形式存储相同数量的数据,或者实际上是要进行严格定义良好的事情,而不是帮助您调试。

Get your string, use the approach as suggested by vadian. 获取您的字符串,使用vadian建议的方法。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM