Coder et Décoder l'utilisation de l'UTF-8 dans l'iPhone
Je suis à la recherche d'un exemple démontrant comment je peux coder et décoder la même chaîne en UTF-8. Coder et Décoder les moyens, je veux mettre en œuvre les méthodes dans 2 domaines où l'on peut encoder et un autre est en mesure de décoder.
J'ai vu l'API, mais je n'ai pas eu beaucoup de succès:
stringWithCString:encoding:
stringWithUTF8String:
stringWithCString:(const char *)cString encoding:(NSStringEncoding)enc;
ÉDITÉ
J'ai la chaîne øæ-test-2.txt
qui je suis encodage comme suit:
char *s = "øæ-test-2.txt";
NSString *enc = [NSString stringWithCString:s encoding:NSASCIIStringEncoding];
mais je suis arriver øæ-test-2.txt
en sortie.
Maintenant, je veux revenir à la chaîne d'origine en arrière c'est à dire øæ-test-2.txt
ÉDITÉ
Je suis øæ-test-2.txt
depuis le serveur, et j'ai besoin de øæ-test-2.txt
par les décoder. Je suis en mesure d'obtenir la sortie à partir du lien : http://www.cafewebmaster.com/online_tools/utf_decode
Veuillez utiliser le lien et vous comprendrez mon inquiétude.
Il serait très apprécié si quelqu'un peut donner un peu d'astuce, tutoriel ou me diriger dans la bonne direction.
Ce qui concerne
OriginalL'auteur Ekra | 2011-01-13
Vous devez vous connecter pour publier un commentaire.
À son tour un
NSString
objet en UTF8 C-string, utiliserUTF8String
À son tour une UTF8 C-chaîne dans un
NSString
objet, utilisezstringWithUTF8String:
ouinitWithUTF8String:
Noter que
NSString
les objets sont mis en œuvre en tant que UTF-16, de sorte que vous ne pouvez vraiment pas avoir un "UTF-8 NSString" (et le codage doit être considéré comme un détail d'implémentation, de toute façon).Eh bien, vous ne pouvez pas utiliser NSASCIIStringEncoding pour lire une chaîne UTF-8 (UTF-8 n'est pas en ASCII). Utilisation NSUTF8StringEncoding ou l' (équivalent mais plus court) stringWithUTF8String:
Merci pour votre réponse. Je suis d'accord que je ne devrais pas faire tout le codage ASCII. Mais j'obtiens la réponse "ÃÃ/-test-2.txt" à partir du serveur. J'ai juste besoin de quelque sorte le convertir en "øæ-test-2.txt". Si j'essaie de l'UTF-decode ("ÃÃ/-test-2.txt") avec le lien ci-dessous, je suis "øæ-test-2.txt". cafewebmaster.com/online_tools/utf_decode en Attente de votre réponse
J'ai édité ma question. Veuillez regarder dans il
OriginalL'auteur vicvicvic
Au lieu de
Cela devrait être
Sinon vous avez un incompatible type de problème.
OriginalL'auteur Michael