iphone中给一个字符串添加另一个字符串
问题描述:
数组中有一些图片,图片格式包括jpg,png和gif扩展名。我需要给每个扩展名前加入-Add这个字符,怎么添加呢?比如,图片为DSC004.jpg
,然后添加-Add成为DSC004-Add.jpg
。请高手指教。谢谢。
答
最通用的方法:
NSString *filename = @"DSC004.jpg";
NSString *ext = [filename pathExtension];
NSString *basename = [filename stringByDeletingPathExtension];
NSString *updated = [basename stringByAppendingString:@"-Add"];
NSString *finalName = [updated stringByAppendingPathExtension:ext];
这方法需要完整路径名和文件名,还有文件名中的多个点。
答
如果是.jpg后缀名的可以用:
NSString *newString = [@"DSC004.jpg" stringByReplacingOccurrencesOfString:@"." withString:@"-Add."];
如果是some.some.jpg这样的后缀名可以:
NSArray *arrayString = [fileName componentsSeparatedByString:@"."];
NSMutableArray *mutableArray = [NSMutableArray arrayWithArray: arrayString];
int arrayCount = [arrayString count];
NSString *newStr = nil;
if(arrayCount>=2)
{
NSString *tempStr = [arrayString objectAtIndex:arrayCount-2];
tempStr = [tempStr stringByAppendingString:@"-Add"];
[mutableArray replaceObjectAtIndex:arrayCount-2 withObject:tempStr];
newStr = [mutableArray componentsJoinedByString:@"."];
NSLog(@"%@",newStr);
}
else
{
newStr = [fileName stringByAppendingString:@"-Add"];
}