2012-01-07 4 views
1

Je crée une application pour iPhone et je veux être en mesure de charger des scores élevés à partir de fichiers texte. J'ai fait un fichier appelé highscores1.txt et l'ai ajouté à mon projet xcode. Lorsque j'essaye de faire un NSString à partir du texte dans le fichier, la valeur de NSString est nulle. Voici mon code:Problèmes avec nsstring à partir du fichier local

NSString *highscore1 = [NSString stringWithContentsOfFile:@"highscore1.txt" encoding:NSUTF8StringEncoding error:NULL]; 

J'ai essayé de changer le chemin du fichier à son chemin complet comme celui-ci:

NSString *highscore1 = [NSString stringWithContentsOfFile:@"/Users/deepikama/Documents/games/Dodge Cars/Dodge Cars/highscore1.txt" encoding:NSUTF8StringEncoding error:NULL]; 

Et cela se traduit par la valeur que je comptais trouver. Pourquoi le chemin complet fonctionne-t-il mais pas le chemin local? Comment puis-je faire fonctionner le chemin local?

Répondre

1

J'ai trouvé un moyen de l'obtenir localement. J'ai changé mon code à ceci:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"highscore1" ofType:@"txt"]; 
    NSString *highscore1 = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL]; 

Merci pour l'aide de toute façon.

0

Lorsque vous avez ajouté ce fichier à votre projet dans XCode, avez-vous choisi Copier les éléments dans le dossier du groupe de destination

+0

Oui, le fichier texte se trouve dans le dossier du groupe. –

1

Je pense que cela explique ce que vous avez besoin:

http://www.techotopia.com/index.php/Working_with_Directories_on_iOS_4_(iPhone)#Identifying_the_Documents_Directory

Aussi, je suis en pariant que ce qui fonctionnait pour vous n'était exécuté que sur le simulateur, et non sur un périphérique réel (où la structure du répertoire est différente).

+0

C'est génial, mais puis-je l'obtenir à partir d'un chemin local? De cette façon, je pourrais tester dans le simulateur et sur un appareil. –

+0

Le simulateur dispose également d'un répertoire Documents, correspondant à ce que vous trouvez sur l'appareil. Voici un lien expliquant cela: http://idevhub.com/where-is-the-iphone-simulator-filesystem-stored/ –

Questions connexes