是否有更有效的方法来剥离一系列不受欢迎的短语,在这种情况下是图像扩展?我知道可以使用这里使用的NSCharacterSet:Replace multiple characters in a string in Objective-C?但是对于整个短语?
NSString *title = [imagePath lastPathComponent];
title = [title stringByReplacingOccurrencesOfString:@".JPG" withString:@""];
title = [title stringByReplacingOccurrencesOfString:@".JPEG" withString:@""];
title = [title stringByReplacingOccurrencesOfString:@".PNG" withString:@""];
title = [title stringByReplacingOccurrencesOfString:@".jpg" withString:@""];
title = [title stringByReplacingOccurrencesOfString:@".jpeg" withString:@""];
title = [title stringByReplacingOccurrencesOfString:@".png" withString:@""];
答案 0 :(得分:2)
NSString中有一个名为-stringByDeletingPathExtension
的方法可用于删除扩展程序,如下所示:
NSString *title = [imagePath lastPathComponent];
NSString *titleMinusExtension = [title stringByDeletingPathExtension];
答案 1 :(得分:0)
假设您总是拥有一些给定的图像文件名,一些用户无法在文本框中输入任何内容,我只需使用文件名并始终删除最后一个.
以及后续内容。
所以简而言之(没有代码,因为我不知道Objective C,你应该添加为标签):
.
。这样你应该总是以一个干净的文件名结束,你不必进行多次查找,你不必担心修改文件名的其他部分(让我们假设还有另一个{{ 1}}在某处。)