2011-05-20 20 views
8

Quiero almacenar dos NSMutableArray que utilizo como matriz global en AppDelegate. Estas dos matrices también se almacenan con NSUserDefaults. Ahora quiero saber cómo debo crear este archivo y cómo puedo almacenar estos dos arreglos cada vez que los modifico. ¿Me puedes ayudar?iOS: almacene dos NSMutableArray en un archivo .plist

Respuesta

12
  1. Cree un NSArray que contenga sus dos NSMutableArrays.

    NSArray *array = [NSArray arrayWithObjects:<#(id), ...#>, nil]; 
    
  2. Escriba la matriz en un archivo.

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES); 
    NSString *libraryDirectory = [paths objectAtIndex:0]; 
    NSString *location = [libraryDirectory stringByAppendingString:@"/somefilename.plist"]; 
    [array writeToFile:location atomically:YES]; 
    
  3. Cargue la matriz del archivo.

    NSString *path = [bundle pathForResource:@"file" ofType:@"plist"]; 
    NSArry *array = (path != nil ? [NSArray arrayWithContentsOfFile:location] : nil); 
    
+0

y al guardar de nuevo? Quiero reemplazarlo, ¿cómo puedo hacer? – CrazyDev

+0

Intento este código, pero cuando abro mi archivo, está vacío – CrazyDev

+0

¿Ha comprobado que sus NSArrays no son nulas? – Julian

Cuestiones relacionadas