2010-09-27 40 views
7

Tôi đang sử dụng vỏ GNUstep cho mục tiêu lập trình-c. Tôi có thể chuyển đổi chuỗi thành một bộ ký tự. Nhưng không thể in bộ ký tự được chuyển đổi trong bảng điều khiển. Vui lòng cho tôi biết cách in. Cảm ơn trước.làm thế nào để in characterSet trong mục tiêu c?

Trả lời

14

Điều này sẽ thực hiện 65536 ký tự đầu tiên trong unicode, điều này sẽ thực hiện trong hầu hết các trường hợp. Tôi tin rằng unicode có thể đi cao hơn nhiều (2^32?), Nhưng điều này sẽ mất nhiều thời gian để đăng nhập.

+ (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); 
    } 
} 

Có một số kết quả tìm kiếm khá thú vị, ví dụ ở đây là một mẫu của 20 nhân vật từ punctuationCharacterSet.

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

+0

nên được đánh dấu là câu trả lời tôi tin. –

+0

Có giải pháp nhanh hơn: http://stackoverflow.com/a/15741737/3050403 – kelin

Các vấn đề liên quan