iOS_将中文转换为拼音

使用CFStringTransform

  • CFStringTransform(<#CFMutableStringRef string#>, <#CFRange *range#>, <#CFStringRef transform#>, <#Boolean reverse#>)
  1. CFMuntbleStringRef string 将要传进来这个类型的字符串 (同时也是一个可变的字符串)

  2. CFRange 输出的范围,如果为NULL就是全部输出;

  3. transfrom 是语言转换的类型KCF就能索引出来;

  4. Boolean 指定该转换是否必须是可逆向转换的。如果转换成功就返回true,否则返回false。选择NO;

  • 例子
1. 首先我们要创建一个字符串
  - 创建一个CFMutableStringRef类型
     CFMutableStringRef string = CFStringCreateMutableCopy(NULL, 0, CFSTR("中国"));
  - 创建一个NSMutableString类型
     NSMutableString *string = [NSMutableString stringWithString:@"中国"]; 
 - 以上两种创建方式选任选其一
2. 调用CFStringTransform方法
    CFStringTransform((CFMutableStringRef)string, NULL, kCFStringTransformMandarinLatin, NO);
  - 国语要选拉丁文
  - 返回值是带有声调的拼音
  - 脱掉附加符号
    CFStringTransform(string, NULL, kCFStringTransformStripDiacritics, NO);
    //通过两次转换,把(发音符号)音标去掉
    NSString *capitalString = [string capitalizedString];
    //首字母大写, 方法返回的是一个新的字符串
    NSString *singleLetter = [capitalString subStringToIndex:1];
    //字符串从下标1开始全干掉,留一个!!!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,958评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,506评论 19 139
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,461评论 0 4
  • 猜想:始祖与枣树坡之间的距离 相传,当年秦始皇为防御北地胡人侵袭,特派蒙恬大将军领兵三十余万,到塞外修筑长城。 时...
    大可can713阅读 3,375评论 0 3
  • 我想要:做个爱自己的人,认可自己,喜欢自己! 我想要:老公事业进步,一直疼爱我,和儿子成为朋友。 我想要:儿子对自...
    玲03阅读 767评论 0 0