La revendication docs iPhone SDK fopen() est une méthode d'accès aux fichiers prise en charge, mais je n'arrive pas à l'obtenir pour renvoyer un handle FILE. J'accède à un répertoire qui est inclus dans mon projet. J'ai essayé fopen "filename", "dir/filename", "./ filename", "./ dir/nomfichier", "/ dir/nomfichier" tout retournant avec un pointeur nul. Certaines personnes déclarent l'utiliser sans problème, donc je suis sûr que c'est quelque chose de simple!Comment fopen() sur l'iPhone?
16
A
Répondre
21
si vous essayez d'accéder à un fichier dans votre paquet d'applications, vous devez obtenir le chemin complet: [[NSBundle mainBundle] pathForResource: FILENAME ofType: FILEEXTENSION]
Ce retourne un NSString, que vous pouvez tirer un UTF8String sur et passer à fopen .
22
Pour être clair pour ouvrir un fichier « some.txt » ...
NSString * path = [[NSBundle mainBundle] pathForResource: @"some" ofType: @"txt"];
FILE *f = fopen([path cStringUsingEncoding:1],"r");
if (f == NULL) NSLog([path stringByAppendingString:@" not found"]);
réponse de Nice, Comment voir le contenu audio après l'ouverture. – Warrior
A la place de '[chemin cStringUsingEncoding: 1]' vous pouvez aussi utiliser 'path.UTF8String' – codingFriend1