问题
Using the following doesn't work:
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement
By doesn't work I mean does not do any replacement what so ever. It returns the same exact string.
Is there a convenience method to do this? Similar to:
- (NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)encoding
My code (just one line):
NSString *escapedPath = [pathToBeConverted stringByReplacingOccurrencesOfString:@" "
withString:@"\ "];
Also, my compiler warning. Which likely has much to do with this:
warning: unknown escape sequence: '\040'
回答1:
You should use @"\\ " instead of @"\ ". In C \ is the escape character. You need to escape it with another \.
来源:https://stackoverflow.com/questions/1556979/replace-character-in-an-nsstring-with-to-create-a-unix-path