Sök…


Introduktion

Plist används för lagring av data i iOS-appen. Spara data i form av Array och ordböcker. I plist kan vi spara data som: 1. Statiska data som ska användas i appen. 2. Data som kommer från servern.

Exempel:

1. Statisk data som ska användas i appen.

För att spara statiska data i plist följer du dessa metoder:

a) Lägg till en ny fil

ange bildbeskrivning här

b) Klicka på Egenskapslista i resurser

ange bildbeskrivning här

c) Namnge egendomslisten och en fil skapas som (data.plist här)

ange bildbeskrivning här

d) Du kan skapa en plist av Arrays och ordböcker som:

ange bildbeskrivning här

// Läs plist från bunt och ta bort Root Dictionary ur det

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

// Din ordlista innehåller en matris med ordlista // Dra nu en matris ur den.

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

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

Spara och redigera / ta bort data från Plist

Du har redan skapat en plist. Denna plist kommer att förbli densamma i appen. Om du vill redigera data i denna plist, lägga till nya data i plist eller ta bort data från plist, kan du inte göra ändringar i den här filen.

För detta ändamål måste du lagra din plist i dokumentkatalog. Du kan redigera din plist som är sparad i dokumentkatalogen.

Spara plist i dokumentkatalogen som:

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
{
     
}

Återuppta data från Plist som:

    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"];

Du kan redigera ta bort, lägga till nya data enligt ditt krav och spara plisten igen i Dokumentkatalog.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow