2011-12-11 45 views

回答

2

这个错误是因为你调用的方法stringByReplacingOccurrencesOfString:withString对尚未实例变量(mypath中)。您需要在NSString类的一个实例上调用该方法,该实例已包含要替换文本的字符串。

+0

非常感谢您的重播,我试图弄明白没有成功。现在没有错误,但输出不显示。我添加NSString * myPath = [[NSString alloc] init]; – Xtrician

1

当您调用某个方法时,您会在receiver上调用该方法。因此,您所呼叫的myPathstringByReplacingOccurrencesOfString:withString:

您分配方法的价值为

NSString *myPath 

这让我假设myPath

[myPath .... 

实际上并没有设置任何东西。 (可能指向垃圾)

你想要的是像这样

NSString *startString = @"hello"; 

//       Receiver   Message 
//        |    | 
//        v    v 
NSString *replacedString = [startString stringByReplacingOccurrencesOfString:@"hello" 
                    withString:@"bye bye"]; 

NSLog(@"Results in => %@", replacedString); 

// Output 
2011-12-11 20:50:01.964 Untitled 2[779:707] Results in => bye bye 

在你试图NSString *myPath = [[NSString alloc] init];这将创建一个空字符串您的上述评论。一个空字符串不包含任何出现的@"/Users/Me/Library/iPhone/4.2/MyApp/Documents/Photos/pic1.png",因此它不能取代它们。

+0

作品great.Thank你 – Xtrician

+0

@EladHadad如果这个工作适合你,那么你应该接受这个答案通过点击复选框答案(它会变成绿色),使他得到的信用帮助你旁边。 – lnafziger

相关问题