Écrire ce fichier ne fonctionne pas

J'essaie de combiner des images dans mon application dans un seul fichier et de les écrire sur le disque.

NSMutableArray *array = [NSMutableArray arrayWithObjects: 
                         [NSData dataWithContentsOfFile:@"0.png"], 
                         [NSData dataWithContentsOfFile:@"1.png"],
                         [NSData dataWithContentsOfFile:@"2.png"],
                         nil];

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:array];
NSError *error = nil;
NSString *path=@"/Users/myusername/Desktop/_stuff.dat";
[data writeToFile:path options:NSDataWritingAtomic error:&error];

ou

NSArray *array = [NSArray arrayWithObjects:
                  [NSImage imageNamed:@"0"], 
                  [NSImage imageNamed:@"1"], 
                  [NSImage imageNamed:@"2"], 
                  nil];

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:array];
NSError *error = nil;
NSString *path=@"/Users/myusername/Desktop/_stuff.dat";
[data writeToFile:path options:NSDataWritingAtomic error:&error];

Mais à la fois de produire un fichier de 4 ko (vide). Si je NSLog l'erreur, il est (null). Suis-je rendre les données dans le mauvais sens?

Edit: Si j'ouvre le fichier avec un éditeur de texte, il ressemble à ceci:
Écrire ce fichier ne fonctionne pas

Vous ne devriez pas coder en dur le chemin comme ça. Utilisation [NSHomeDirectory() stringByAppendingPathComponent:@"Desktop/_stuff.dat"]; ou même [[NSHomeDirectory() stringByAppendingPathComponent:@"Desktop"] stringByAppendingPathComponent:@"_stuff.dat"];
Merci pour l'astuce. C'est un temps d'utiliser le code que j'utilise pour regrouper les images dans un seul gros fichier uniquement pour mon usage personnel. Cependant, je vais garder cela à l'esprit!

OriginalL'auteur sudo rm -rf | 2011-03-02