Array met dicts naar een plist schrijven discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Hallo, ik ben een simpel programma aan het schrijven naar aanleiding van deze tutorial (het is eigenlijk voor Mac OSX, niet voor iPhone maar ik ...
|
Registreer | FAQ | Ledenlijst | Kalender | Berichten van vandaag | Zoeken |
#1
|
|||
|
|||
Array met dicts naar een plist schrijven
Hallo,
ik ben een simpel programma aan het schrijven naar aanleiding van deze tutorial (het is eigenlijk voor Mac OSX, niet voor iPhone maar ik nam aan dat op dit forum de kennis ook in huis is) . De gebruiker ziet een lijstje, kan daar een muziekbestand aan toevoegen en afspelen, en als het programma opnieuw wordt gestart staan de toegevoegde tracks er nog steeds in. Een soort uitgeklede versie (zeg maar naakt) van iTunes dus. Het probleem is dat de toegevoegde tracks niet worden opgeslagen. Ik gebruik een NSList om de bestandsnamen te weergeven die in Songs.plist staan. Dat werkt. Een bestand toevoegen aan de lijst werkt ook, het pad naar dat bestand komt dan in de lijst te staan. Echter als ik het programma afsluit en weer opstart, zijn de toegevoegde bestanden niet opgeslagen, ze worden niet weggeschreven. Alle stappen daarvoor werken prima, echt alleen het regeltje dat de bestanden opslaat werkt niet. Relevante code: Code:
- (IBAction)addSong:(id)sender { // Create the File Open Dialog class. NSOpenPanel* openDlg = [NSOpenPanel openPanel]; // Enable the selection of files in the dialog. [openDlg setCanChooseFiles:YES]; // Enable the selection of directories in the dialog. [openDlg setCanChooseDirectories:NO]; // Display the dialog. If the OK button was pressed, process the first file. if ( [openDlg runModalForDirectory:nil file:nil] == NSOKButton ) { // Get an array containing the full filenames of all files and directories selected. NSArray* files = [openDlg URLs]; NSString* fileName = [files objectAtIndex:0]; //create a new song entry based on the input values NSDictionary *dict = [NSDictionary dictionaryWithObject:fileName forKey:@"fileName"]; NSLog(@"dict = %@", dict); //add it to the arrayController [IBSongsArray addObject:dict]; } //save the changes to the plist if( ![[NSFileManager defaultManager] fileExistsAtPath:filePath] || [[NSFileManager defaultManager] isWritableFileAtPath:filePath]) { NSLog(@"filepath: %@", filePath); [[IBSongsArray arrangedObjects] writeToFile:filePath atomically:YES]; } } Alvast dank, Ruben Laatst gewijzigd door MaximalFX; 18-11-09 om 10:51. |
|
|
Gesponsorde links (verdwijnt na registratie)
|
Labels |
dictionary, file, plist, writetofile, xml |
Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten) |
|
Soortgelijke discussies |
||||
Discussie | Auteur | Forum | Reacties | Laatste bericht |
Mac OS X: iTunes kan niet meer schrijven naar iPhone | kleinecasper | iTunes | 26 | 15-06-12 14:05 |
Mac OS X: Schrijven naar iPhone 3G onmogelijk | Mackjenzie | iTunes | 0 | 22-03-10 21:30 |
Windows: Een Plist Editor voor windows? | midon | Desktop-applicaties | 8 | 28-06-09 17:15 |
XML in een plist file | ulquiorra | Ontwikkelen voor iOS | 12 | 26-05-09 18:49 |
itunes kan muziek niet naar iphone schrijven | sapje | iTunes | 4 | 07-01-09 17:02 |
|
|