Comment convertir NSString à CSTRING?
-
26-09-2019 - |
Question
J'ai un NSString (filePath), qui a le chemin vers le fichier audio. Je veux ouvrir le fichier audio, donc je veux convertir le NSString à CSTRING.
fopen([filePath cStringUsingEncoding:1], "r");
est la ligne ci-dessus est correcte ou non, parce que je peux aussi utiliser fopen([filePath cString], "r");
. Dans certains sites, il est mentionné à utiliser UTF8stringEncoding. Quel est le droit NSString à la conversion de chaîne?
La solution
Utilisez UTF8String
:
fopen([filePath UTF8String], "r");
Autres conseils
Ne pas utiliser UTF8String
, mais fileSystemRepresentation
.
Vous devriez faire cela parce que HFS + ou d'autres systèmes de fichiers ne sont pas strictement compatibles avec le système Unicode. Une autre raison. Cette méthode fonctionne en remplaçant le chemin d'accès abstraits et des caractères de séparation d'extension ( « » « / » et respectivement) avec leurs équivalents pour le système de fichiers en cours