-4

我正在获取本地保存的图像 url,现在我正在尝试将其转换为字符串。我知道absoluteString将 url 转换为字符串的方法,但在这种情况下不起作用。

我的网址是这样的(文件://本地主机/用户.......)

 NSString * imagestring = [entryObject.imageurl absoluteString];

但它的抛出错误 unrecognized selector sent to instance 0xc36c410。我不知道为什么会这样

这是我的对象类

@interface EntryObject : NSObject
@property (nonatomic, strong) NSString *descString;
@property (nonatomic, strong) UIImage *photoImage;
@property (nonatomic, strong) NSURL * imageurl;
@property (nonatomic, strong) NSString *dairyId;
@property (nonatomic, strong) NSString *eventId;
@property (nonatomic, strong) NSString *dateString;

@property (nonatomic, strong) NSString *monthwiseSeparate_String;
@property (nonatomic,strong)  NSString *sortedString;
@property (nonatomic,strong) NSData * entryimagedata;
4

3 回答 3

2
    entryObject.imageurl = [NSURL fileURLWithPath:yourPath];
于 2013-03-29T07:26:43.047 回答
1

如果您收到unrecognized selector sent to instance错误,则表示您已向一个对象发送了一条消息,该对象不知道如何解释此消息。即,比如说,你有一个NSString对象并且你正在向absoluteString它发送一条消息,你会得到这个错误。

所以这样做的原因肯定是即使imageurl被声明为NSURL你可能(并且可能不小心做了)为它分配了一些其他类的对象。看起来你那里只有一个 NSString,从数据库中获得,为了解决你的问题,你不需要转换到NSString它已经是NSString. 将您的代码发布在您设置imageURL属性和发送absoluteString消息的位置。absoluteString还要在发送到 a的行之前放置一个断点imageURL并检查imageURL.

于 2013-03-29T07:19:25.187 回答
0

尝试这个:

NSString * imagestring = (NSString *)[entryObject.imageurl absoluteString];

或者

NSString * imagestring = (NSString *)[entryObject imageurl];
于 2013-03-29T07:53:30.917 回答