将 url 转换为字符串 [关闭]

Posted

技术标签:

【中文标题】将 url 转换为字符串 [关闭]【英文标题】:Converting url to string [closed] 【发布时间】:2013-03-29 06:54:44 【问题描述】:

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

我的网址是这样的(file://localhost/Users.......)

 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;

【问题讨论】:

什么实例?你知道这个方法只适用于NSURL,没有别的? 显示entryObject的类 也许从 NSLog(@"%@", entryObject.imageurl);让我们看看它是什么样子的。 @H2CO3 它的 nsurl 只是为你命名差异我已更改名称我对我的网址有一点怀疑我没有 http:// 所以我认为因此它不起作用 @ganeshmanoj 这只是意味着您将其声明NSURL,但在运行时它可以是任何东西。您能说明您在哪里初始化该对象并分配imageUrl 属性吗? 【参考方案1】:
    entryObject.imageurl = [NSURL fileURLWithPath:yourPath];

【讨论】:

【参考方案2】:

如果您收到unrecognized selector sent to instance 错误,则表示您已向不知道如何解释此消息的对象发送消息。即,假设您有一个 NSString 对象,并且您正在向它发送 absoluteString 消息,您将收到此错误。

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

【讨论】:

【参考方案3】:

试试这个:

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

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

【讨论】:

以上是关于将 url 转换为字符串 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

c# 如何将字符串转换成url

JSON整数自动转换为除id之外的字符串[关闭]

将字符串转换为整数部分 C++ [关闭]

将字符串转换为类对象 [关闭]

将任何文件转换为二进制字符串并从二进制转换为文件[关闭]

怎样把查询转换为url