46
If you want to use a specific locale (the NSString docs don't seem to indicate what locale the upper/lowercase/capitalise methods use) then you need to use a CFString function:
NSString* inputString = @"input";
NSString* outputString;
NSLocale* locale = [[NSLocale alloc] initWithLocaleIdentifier:@"tr_TR"];
CFMutableStringRef tempCFMString = CFStringCreateMutableCopy(NULL, 0, (CFStringRef)inputString);
CFStringCapitalize(tempCFMString, (CFLocaleRef)locale);
outputString = [[(NSString*)tempCFMString copy] autorelease];
CFRelease(tempCFMString);
//remember to release stuff