Suche…


Einführung

Plist wird zum Speichern von Daten in der iOS-App verwendet. Speichern Sie die Daten in Form von Arrays und Wörterbüchern. In plist können wir Daten speichern als: 1. Statische Daten, die in App verwendet werden sollen. 2. Daten, die vom Server kommen.

Beispiel:

1. Statische Daten zur Verwendung in App.

Um statische Daten in plist zu speichern, gehen Sie folgendermaßen vor:

a) Fügen Sie eine neue Datei hinzu

Geben Sie hier die Bildbeschreibung ein

b) Klicken Sie in den Ressourcen auf Eigenschaftsliste

Geben Sie hier die Bildbeschreibung ein

c) Benennen Sie die Eigenschaftsliste, und eine Datei wird erstellt als

Geben Sie hier die Bildbeschreibung ein

d) Sie können eine Liste von Arrays und Wörterbüchern erstellen als:

Geben Sie hier die Bildbeschreibung ein

// Lies die plist vom Bundle und hol das Root Dictionary raus

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

// Ihr Wörterbuch enthält ein Array von Wörterbüchern. // Ziehen Sie jetzt ein Array heraus.

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

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

Speichern und Bearbeiten / Löschen von Daten in Plist

Sie haben bereits eine Liste erstellt. Diese Liste wird in App unverändert bleiben. Wenn Sie die Daten in dieser Plist bearbeiten möchten, neue Daten in Plist hinzufügen oder Daten aus Plist entfernen möchten, können Sie keine Änderungen an dieser Datei vornehmen.

Zu diesem Zweck müssen Sie Ihre Liste im Document Directory speichern. Sie können Ihre im Dokumentverzeichnis gespeicherte Pliste bearbeiten.

Plist im Dokumentenverzeichnis speichern als:

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

Retreive-Daten von Plist als:

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

Sie können die Dateien entfernen, neue Daten hinzufügen und die Liste erneut im Dokumentverzeichnis speichern.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow