Это раздражает, но я не могу заставить этот код работать, сначала я подумал, что это была изменчивая / неизменная проблема, но, думаю, это не так.Что я делаю неправильно?У labeleledPemString do есть содержимое, и указанный набор символов печатает «диапазоны начинаются {0, 26}».Но unlabeledBeginPemString имеет то же самое, что и исходная строка.
//Get the .pem file contents
NSString *path = [[NSBundle mainBundle] pathForResource:@"publickey" ofType:@"pem"];
NSMutableString *labeledPemString = [[NSMutableString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
NSLog(@"labeled %@", labeledPemString);
//Take off -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY----- headers
//First get begin range
NSRange beginHeaderRange = [labeledPemString rangeOfString:@"-----BEGIN PUBLIC KEY-----"];
NSLog(@"ranges begin %@ ", NSStringFromRange(beginHeaderRange));
//Create a characterset with begin range
NSCharacterSet *beginHeaderChSet = [NSCharacterSet characterSetWithRange:beginHeaderRange];
//Trim text
NSMutableString *unlabeledBeginPemString = [[labeledPemString stringByTrimmingCharactersInSet:beginHeaderChSet] mutableCopy];
NSLog(@"unlabeled 1 %@", unlabeledBeginPemString);
Спасибо за помощь.