2010-05-14 6 views
34

Je me demandais si quelqu'un a des équivalents de fonction php suivantes en Objective-C pour le développement iPhone:Comment convertir la valeur ASCII à un caractère en Objective-C?

  1. ord() # renvoie la valeur ASCII du premier caractère d'une chaîne.
  2. chr() # renvoie un caractère de la valeur ASCII spécifiée.

Un grand merci!

+0

Qu'est-ce qui se passe si la chaîne contient des caractères non ASCII? – Mark

Répondre

109

Voici comment vous pouvez travailler avec les valeurs ASCII et NSString. Notez que depuis NSString travaille avec unichars, il pourrait y avoir des résultats inattendus pour une chaîne non ASCII.

// NSString to ASCII 
NSString *string = @"A"; 
int asciiCode = [string characterAtIndex:0]; // 65 

// ASCII to NSString 
int asciiCode = 65; 
NSString *string = [NSString stringWithFormat:@"%c", asciiCode]; // A 
+1

Cela fonctionne parfaitement pour moi de vous remercier! – topace

11
//char to int ASCII-code 
char c = 'a'; 
int ascii_code = (int)c; 

//int to char 
int i = 65; // A 
c = (char)i; 
+2

caractère dans c est un « petit » int de sorte que vous n'avez pas besoin de lancer char int – Kimi

+0

Merci luvieere pour la réponse! Très appréciée. – topace

+0

Merci, a travaillé pour sa même valeur négative si int i par exemple = 223, vous obtenez une sortie de char c est -33 –

Questions connexes