美文网首页
使用CFStringTransform将中文转变为拼音

使用CFStringTransform将中文转变为拼音

作者: codermali | 来源:发表于2018-04-11 15:03 被阅读11次

    不废话,直接上代码.

    - (NSString *)convertToPinyinWithChineseCharactor:(NSString *)charactor {
        //1.将字符串转变为可变
        NSMutableString *charactorM = [NSMutableString stringWithString:charactor];
        //2.将可变字符串转变为带声调的拼音
        /**
         *  string      要转换的字符串,要转成CFMutableStringRef格式
         *  range       要转换的范围.如果为NULL,表示全部转换
         *  transform   要进行怎么样模式的转换
         *  reverse     该转换是否必须是可逆向转换的。
         *
         *  返回一个boolean值,表示是否转换成功
         */
        Boolean success = CFStringTransform((CFMutableStringRef)charactorM, NULL, kCFStringTransformMandarinLatin, false);
        
        if (success == false) {
            NSLog(@"转换出错 -- 1");
            return nil;
        }
        
        NSLog(@"%@", charactorM);
        
        //3.去掉声调
        Boolean successT = CFStringTransform((CFMutableStringRef)charactorM, NULL, kCFStringTransformStripDiacritics, NO);
        
        if (successT == false) {
            NSLog(@"转换出错 -- 2");
            return nil;
        }
        
        NSLog(@"%@", charactorM);
        return charactorM;
    }
    

    相关文章

      网友评论

          本文标题:使用CFStringTransform将中文转变为拼音

          本文链接:https://www.haomeiwen.com/subject/fkxzhftx.html