iOS汉字转拼音的方法

网络流行的汉字转拼音方案是带一个拼音码表,速度快。其实Core Foundation也提供了一种方案,而且还带声调!

NSMutableString *ms = [[NSMutableString alloc] initWithString:@"我是中国人"];
if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformMandarinLatin, NO)) {
    NSLog(@"Pingying: %@", ms); // wǒ shì zhōng guó rén
}
if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformStripDiacritics, NO)) {
    NSLog(@"Pingying: %@", ms); // wo shi zhong guo ren
}

有兴趣的可以试一试,这个函数不仅支持中文,日文韩文等都没问题,很强大。

也可以通过上述方法算出首个汉字的大写字母(这个感觉挺有用)

//获取拼音首字母(传入汉字字符串, 返回大写拼音首字母)
- (NSString *)firstCharactor:(NSString *)aString
{
    //转成了可变字符串
    NSMutableString *str = [NSMutableString stringWithString:aString];
    //先转换为带声调的拼音
    CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformMandarinLatin,NO);
    //再转换为不带声调的拼音
    CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformStripDiacritics,NO);
    //转化为大写拼音
    NSString *pinYin = [str capitalizedString];
    //获取并返回首字母
    return [pinYin substringToIndex:1];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 为什么韩国、日本无法舍弃汉字? 概述:由于早期的朝鲜半岛、 日本列岛所处时代文化落后,有语言没有文字,而此时中原华...
    业余书法阅读 2,344评论 0 5
  • Core Foundation包含文字转拼音的相应方法,而且还支持声调。具体过程如下: 首先假设有一段文字NSSt...
    FMengz阅读 639评论 0 2
  • 花费了1RMB的成果——新版轻松掌握五十音 爽学班 沪江网校 日语的发音,暂时只有五十音和清浊音 密码:k0...
    冰凝雪国阅读 3,068评论 7 24
  • 女人,如花般存在于世间的人,不同的年纪会展现不同的风情。 闲暇无事时最喜欢的就是听歌,歌曲里优美动听的旋律能让疲累...
    花间醉_ba4b阅读 392评论 3 1
  • 男友不理我了,感觉突然就拍不出好片子了
    接地气的土鳖阅读 236评论 2 1

友情链接更多精彩内容