{{tag>nsdata nsmutablestring nsstring fichier}} ====== Lecture et écriture de fichiers ====== ===== Écrire une chaîne de caractères ===== NSMutableString *chaine = [[NSMutableString alloc] init]; NSError *erreurs = nil; BOOL succes = [chaine writeToFile:@"/chemin/vers/le/fichier.txt" atomically:YES encoding:NSUTF8StringEncoding error:&erreurs]; if (succes) //Faire des trucs en cas de succès else NSLog(@"Erreur d'écriture de /chemin/vers/le/fichier.txt : %@", [erreurs localizedDescription]); ===== Lire un fichier dans une chaîne de caractères ===== NSString *lecture = [[NSString alloc] initWithContentsOfFile:@"/chemin/vers/le/fichier.txt" encoding:NSUTF8StringEncoding error:&erreurs]; NSError *erreurs = nil; if (lecture) // Faire des trucs en cas de succès de la lecture else NSLog(@"Lecture échouée : %@", [erreurs localizedDescription]); ===== Mettre des données dans un tampon ===== NSURLRequest *requete = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.domain.ext/ressource.ext"]]; NSError *erreurs = nil; NSData *donnees = [NSURLConnection sendSynchronousRequest:requete returningResponse:NULL error:&erreurs]; if (!donnees) { NSLog(@"Échec de la récupération : %@", [erreurs localizedDescription]); return 1; } ===== Écrire un NSData dans un fichier ===== BOOL ecriture = [donnees writeToFile:@"/tmp/google.png" options:0 error:&erreurs]; if (!ecriture) { NSLog(@"Échec de l'écriture : %@", [erreurs localizedDescription]); return 1; } ===== Créer un NSData à partir d'un fichier ===== NSData *donnees = [NSData dataWithContentsOfFile:@"/chemin/vers/le/fichier.ext"];