iOS 中文转拼音

本文介绍了一个使用Objective-C实现的将汉字转换为拼音的方法。该方法利用了Core Foundation框架中的CFStringTransform函数来完成从汉字到拼音的转换,并且在转换过程中去除了声调符号。
- (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;
    
}

 

转载于:https://www.cnblogs.com/qzp2014/p/5387994.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值