iOS 中文转拼音

- (NSString * ) chineseToPinyin:(NSString *) chinese{
    CFStringRef hanzi = (__bridge CFStringRef)(chinese);
    CFMutableStringRef string = CFStringCreateMutableCopy(NULL, 0, hanzi);
 
    // Boolean CFStringTransform(CFMutableStringRef string, CFRange *range, CFStringRef transform, Boolean reverse);
    //string 为要转换的字符串
    // range 要转换的范围,NULL 则为全部
    //transform 要进行怎么样的转换    //kCFStringTransformMandarinLatin 将汉字转拼音
    //reverse 是否支持逆向转换
    CFStringTransform(string, NULL, kCFStringTransformMandarinLatin, NO);
    
    //kCFStringTransformStripDiacritics去掉声调
    CFStringTransform(string, NULL, kCFStringTransformStripDiacritics, NO);
    
    NSString * pinyin = (NSString *) CFBridgingRelease(string);
    //将中间分隔符号去掉
    pinyin = [pinyin stringByReplacingOccurrencesOfString:@" " withString: @""];
    
    return pinyin;
    
}

 

posted @ 2016-04-13 17:36  云影风雨  阅读(652)  评论(0编辑  收藏  举报