Почему я не могу добавить строку в цикл for?

У меня есть следующий код, который я пытаюсь просто пройти по объекту и для каждого имени NSPropertyDescription добавить его к изменяемой строке, из которой я буду строить дополнительную строку.

   - (void) createCSV {
    NSEntityDescription *anEntity = [NSEntityDescription entityForName:@"Missions" inManagedObjectContext:self.missionDatabase.managedObjectContext];

    NSMutableString *csvString = [NSString string];

    for (NSPropertyDescription *property in anEntity) {
        [csvString appendString:property.name];
    }
    NSLog(@"%@",csvString);
}

Проблема при запуске следующего кода заключается в том, что я получаю

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Attempt to mutate immutable object with appendString:'

Я не могу понять, что я делаю неправильно. Могу ли я не добавлять NSString к NSMutableString?


person Russ    schedule 15.08.2012    source источник


Ответы (1)


Посмотри снова. csvString не изменяется. Вы создаете NSString. Создание NSMutableString выглядит так:

 NSMutableString *csvString = [NSMutableString string];
person jscs    schedule 15.08.2012
comment
И в этом красота свежего набора глазных яблок. Я ценю помощь и чувствую себя глупо из-за того, что не вижу этого сейчас. - person Russ; 15.08.2012