2010-09-27 5 views
7

J'utilise GNUstep shell pour la programmation de l'objectif-c. Je suis capable de convertir une chaîne en un jeu de caractères. Mais impossible d'imprimer le jeu de caractères converti dans la console. S'il vous plaît dites-moi un moyen de l'imprimer. Merci d'avance.comment imprimer characterSet dans l'objectif c?

Répondre

14

Cela fera les premiers caractères 65536 en Unicode, ce qui sera le cas pour la plupart des situations. Je crois qu'unicode peut aller beaucoup plus haut (2^32?), Mais cela prendrait beaucoup plus de temps pour se connecter.

+ (void) logCharacterSet:(NSCharacterSet*)characterSet 
{ 
    unichar unicharBuffer[20]; 
    int index = 0; 

    for (unichar uc = 0; uc < (0xFFFF); uC++) 
    { 
     if ([characterSet characterIsMember:uc]) 
     { 
      unicharBuffer[index] = uc; 

      index ++; 

      if (index == 20) 
      { 
       NSString * characters = [NSString stringWithCharacters:unicharBuffer length:index]; 
       NSLog(@"%@", characters); 

       index = 0; 
      } 
     } 
    } 

    if (index != 0) 
    { 
     NSString * characters = [NSString stringWithCharacters:unicharBuffer length:index]; 
     NSLog(@"%@", characters); 
    } 
} 

Il y a des résultats à la recherche assez amusant, par exemple, est ici un échantillon de 20 caractères de punctuationCharacterSet.

་. ༉ ༊ ་ ་ ་.་.་. ་ ་. ༒ ་,()() ྅

+0

doit être marqué comme la réponse que je crois. –

+0

Il existe une solution plus rapide: http://stackoverflow.com/a/15741737/3050403 – kelin