Inicialmente pensé que esto iba a funcionar, pero ahora entiendo que no lo hará porque artistCollection es una NSMutableArray de objetos "Artist".Guardar/Escribir NSMutableArray de los objetos en el disco?
@interface Artist : NSObject {
NSString *firName;
NSString *surName;
}
Mi pregunta es ¿cuál es la mejor manera de grabar en el disco mi NSMutableArray de objetos "artista" de modo que pueda cargar ellos la próxima vez que corro mi solicitud?
artistCollection = [[NSMutableArray alloc] init];
newArtist = [[Artist alloc] init];
[newArtist setFirName:objFirName];
[newArtist setSurName:objSurName];
[artistCollection addObject:newArtist];
NSLog(@"(*) - Save All");
[artistCollection writeToFile:@"/Users/Fgx/Desktop/stuff.txt" atomically:YES];
EDITAR
Muchas gracias, solo una última cosa tengo curiosidad. Si "Artist" contenía una variable de instancia adicional de NSMutableArray (softwareOwned) de otros objetos (Aplicaciones) ¿cómo expandiría la codificación para cubrir esto? ¿Añadiría NSCoding al objeto "Aplicaciones", luego codificaría eso antes de codificar "Artist" o hay alguna forma de especificar esto en "Artist"?
@interface Artist : NSObject {
NSString *firName;
NSString *surName;
NSMutableArray *softwareOwned;
}
@interface Application : NSObject {
NSString *appName;
NSString *appVersion;
}
muchas gracias
gary
para responder a sus editar: acaba de poner en práctica NSCoding para su clase de aplicaciones y, en Artist's encodeWithCoder: e initWithCoder :, agregue líneas para manejar la codificación/descodificación de la matriz mutable. Cuando se le pide que se codifique, la matriz le pedirá a los objetos Aplicación que se codifiquen. –
Ah, ya veo, perfecto, gracias Ole. – fuzzygoat