Ricerca…


introduzione

Plist viene utilizzato per la memorizzazione dei dati nell'app iOS. Plist salva i dati sotto forma di array e dizionari. In plist possiamo salvare i dati come: 1. Dati statici da utilizzare nell'app. 2. Dati che arriveranno dal server.

Esempio:

1. Dati statici da utilizzare nell'app.

Per salvare i dati statici in plist segui questi metodi:

a) Aggiungi un nuovo file

inserisci la descrizione dell'immagine qui

b) Fare clic su Elenco proprietà in Risorse

inserisci la descrizione dell'immagine qui

c) Nome della lista di proprietà e un file verrà creato come (data.plist qui)

inserisci la descrizione dell'immagine qui

d) È possibile creare un plist di array e dizionari come:

inserisci la descrizione dell'immagine qui

// Leggi plist da bundle e ottieni Root Dictionary

NSDictionary *dictRoot = [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"]];

// Il tuo dizionario contiene una serie di dizionari // Ora estrai una matrice da essa.

NSArray *arrayList = [NSArray arrayWithArray:[dictRoot objectForKey:@"Object1"]];

for(int i=0; i< [arrayList count]; i++)
{
    NSMutableDictionary *details=[arrayList objectAtIndex:i];
}

Salva e modifica / cancella i dati da Plist

Hai già creato un plist. Questo plist rimarrà lo stesso in app. Se si desidera modificare i dati in questo plist, aggiungere nuovi dati in plist o rimuovere i dati da Plist, non è possibile apportare modifiche in questo file.

A tale scopo dovrai archiviare i tuoi plist in Document Directory. È possibile modificare il plist salvato nella directory del documento.

Salva plist nella directory del documento come:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"];

NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:filePath];

NSDictionary *plistDict = dict;

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString *error = nil;

NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistDict format:NSPropertyListXMLFormat_v1_0 errorDescription:&error];

if (![fileManager fileExistsAtPath: plistPath]) {
    
    if(plistData)
    {
        [plistData writeToFile:plistPath atomically:YES];
    }
}
else
{
     
}

Riscrivi i dati da Plist come:

    NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsPath = [paths objectAtIndex:0];
    NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
    NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:plistPath];
    
    NSArray *usersArray = [dict objectForKey:@"Object1"];

È possibile modificare rimuovere, aggiungere nuovi dati secondo le proprie esigenze e salvare nuovamente il plist in Document Directory.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow