Обрезка строки NSS без ее расширения
Я хочу обрезать строку до 50 символов (если она слишком длинная), поэтому я решил использовать следующий метод.
someString = [someString stringByPaddingToLength: 50 withString: @"" startingAtIndex: 0];
Могу ли я передать пустую строку после withString
аргумент? Я не хочу завершать работу моего приложения, когда метод пытается добавить строку до someString
50 символов в длину. Я боюсь, что это будет плохо, потому что придется повторять строку [someString length] / 0
раз.
Должен ли я использовать nil
вместо этого или искать другой способ сделать обрезку?
Спасибо.
2 ответа
Решение
Я не совсем уверен, почему вы используете stringByPaddingToLength:...
метод, если вы хотите обрезать строку. Я бы подумал, что substringToIndex:
Метод NSString был бы более логичным решением.
Например:
NSString *testString = @"This is a test string that contains over fifty characters. Exciting, yet true.";
if([testString length] > 50) {
// The source string is long enough to grab a substring of.
NSString *truncatedString = [testString substringToIndex:50];
}
else {
// The source string is already less than fifty characters.
NSString *truncatedString = [NSString stringWithString:testString];
}