2010-05-24 4 views
4

Je travaille sur un simple éditeur de texte à Cocoa/Objective-C pour un projet pratique et je suis tombé sur une erreur que je ne l'aurais jamais attendu.Troubles avec NSString writeToFile

J'ai un NSString pour le contenu de mon dossier ainsi qu'un NSString pour son chemin. Lorsque je tente d'écrire le contenu dans un fichier, j'utilise la méthode suivante:

[FileContents writeToFile: CurrentFileName 
       atomically: NO 
       encoding: NSStringEncoding /* Error occurs on this line */ 
        error: nil]; 

Je l'ai utilisé cette méthode plusieurs fois sans erreur encore aujourd'hui, je me fais une erreur:

« expression Expected avant « NSStringEncoding » »

Si quelqu'un peut me aider avec cela, il serait grandement apprécié. Je ne peux pas comprendre ce qui pourrait causer l'erreur. Merci beaucoup!

Répondre

8

NSStringEncoding est pas une valeur valide. Vous devez décider ce que text encoding à utiliser. Si vous ne connaissez rien aux codages de texte et que ces fichiers ne sont utilisés que par votre programme, je vous recommande d'utiliser NSUTF8StringEncoding partout.

UTF-8 a de nombreux avantages, y compris qu'il est ASCII si vous ne rencontrez pas de caractères non-ASCII.

+0

Merci! J'ai juste compris mon erreur dès que je l'ai posté. Note à moi-même: N'essayez pas de programmer sur de faibles niveaux de sommeil =) –

+0

Si c'est la bonne réponse, n'oubliez pas de cliquer sur le √ à gauche. –

3

NSStringEncoding est un type, pas une valeur. Vous devez spécifier dont NSStringEncoding vous souhaitez (par exemple NSUTF8StringEncoding, NSASCIIStringEncoding, etc.).