IOS平台汉字转拼音方案

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

Java代码  

  1. NSMutableString *ms = [[NSMutableString alloc] initWithString:@"我是中国人"];
  2. if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformMandarinLatin, NO)) {
  3. NSLog(@"Pingying: %@", ms); // wǒ shì zhōng guó rén
  4. }
  5. if (CFStringTransform((__bridge CFMutableStringRef)ms, 0, kCFStringTransformStripDiacritics, NO)) {
  6. NSLog(@"Pingying: %@", ms); // wo shi zhong guo ren
  7. }
        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
        }

CREATE INDEX sql-statement ::= CREATE [UNIQUE] INDEX [IF NOT EXISTS] [database-name .] index-name  ON table-name ( column-name [, column-name]* ) column-name ::= name [ COLLATE collation-name] [ ASC | DESC ] CREATE INDEX命令由“CREATE INDEX”关键字后跟新索引的名字,关键字“ON”,待索引表的名字,以及括弧内的用于索引键的字段列表构成。每个字段名可以跟随“ASC”或“DESC”关键字说明排序法则,但在当前版本中排序法则被忽略。排序总是按照上升序。
每个字段名后跟COLLATE子句定义文本记录的比较顺序。缺省的比较顺序是由CREATE TABLE语句说明的比较顺序。若不定义比较顺序,则使用内建的二进制比较顺序。
附加到单个表上的索引数目没有限制,索引中的字段数也没有限制。
若UNIQUE关键字出现在CREATE和INDEX之间,则不允许重名的索引记录。试图插入重名记录将会导致错误。
每条CREATE INDEX语句的文本储存于sqlite_master或sqlite_temp_master表中,取决于被索引的表是否临时表。 每次打开数据库时,所有的CREATE INDEX语句从sqlite_master表中读出,产生SQLite的索引样式的内部结构。
若使用可选的IF NOT EXISTS子句,且存在同名索引,则该命令无效。
使用DROP INDEX命令删除索引。

时间: 2024-10-17 22:02:33

IOS平台汉字转拼音方案的相关文章

iOS获取汉字的拼音

在iOS开发中经常涉及到汉字的排序,最常见的就是需要根据首字母的字符顺序排列,比如常见的通讯录等.总结出来,大致可以分为两种方法,其中参考文献[1]中提供的方法十分复杂,并且代码量很大,不建议采用.另一种方法是直接采用Core Foundation中提供的方法,十分简单,封装好的代码如下: 1 - (NSString *)transform:(NSString *)chinese{ 2 //将NSString装换成NSMutableString 3 NSMutableString *pinyin

iOS 获取汉字的拼音 CFStringTransform

在ios开发中经常碰需要将汉字转成拼音的情况,以下就是我把汉字转成拼音的方法 代码实现 + (NSString *)transform:(NSString *)chinese{ //将NSString装换成NSMutableString NSMutableString *pinyin = [chinese mutableCopy]; //将汉字转换为拼音(带音标) CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFSt

iOS:汉字转拼音(类方法)

之前写了一篇关于汉字换拼音的,后来我个人用着用着也不舒服了,有点麻烦 在这里,我直接写一个类方法 点击下载源码 这是一个类,也就只有一个类方法,直接导入就能使用,但是我先声明输出结果,纯大写,汉字与汉字之间的拼音格式有空格 即: 哈哈    =>  HA HA 所占长度分别为: 2                   5 其他就没什么了

iOS将汉字转换为拼音

将汉字转换为拼音 - (NSString *)chineseToPinyin:(NSString *)chinese withSpace:(BOOL)withSpace { CFStringRef hanzi = (__bridge CFStringRef)chinese; CFMutableStringRef string = CFStringCreateMutableCopy(NULL, 0, hanzi); CFStringTransform(string, NULL, kCFString

ios汉字转拼音首字母

ios汉字转拼音首字母 //获取拼音首字母(传入汉字字符串, 返回大写拼音首字母) - (NSString *)firstCharactor:(NSString *)aString { //转成了可变字符串 NSMutableString *str = [NSMutableString stringWithString:aString]; //先转换为带声调的拼音 CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransform

iOS把汉字转成拼音

//汉字转拼音 NSMutableString *mutableString = [NSMutableString stringWithString:person.name]; CFStringTransform((CFMutableStringRef)mutableString, NULL, kCFStringTransformToLatin, false); mutableString = (NSMutableString *)[mutableString stringByFoldingWi

JavaScript 汉字与拼音互转终极方案 附JS拼音输入法

前言 网上关于JS实现汉字和拼音互转的文章很多,但是比较杂乱,都是互相抄来抄去,而且有的不支持多音字,有的不支持声调,有的字典文件太大,还比如有时候我仅仅是需要获取汉字拼音首字母却要引入200kb的字典文件,无法根据实际需要满足需求. 综上,我精心整理并修改了网上几种常见的字典文件并简单封装了一下可以直接拿来用的工具库. 代码和DEMO演示 github项目地址:https://github.com/liuxianan/pinyinjs 完整demo演示:http://demo.liuxiana

JS版汉字与拼音互转终极方案,附简单的JS拼音输入法

原文:http://www.cnblogs.com/liuxianan/p/pinyinjs.html 前言 网上关于JS实现汉字和拼音互转的文章很多,但是比较杂乱,都是互相抄来抄去,而且有的不支持多音字,有的不支持声调,有的字典文件太大,还比如有时候我仅仅是需要获取汉字拼音首字母却要引入200kb的字典文件,无法根据实际需要满足需求. 综上,我精心整理并修改了网上几种常见的字典文件并简单封装了一下可以直接拿来用的工具库. 这篇文章差不多一个月前就写好了大部分了,但是就差拼音输入法这一块一直没时

【推荐】iOS汉字转拼音第三方库

PinYin4Objc是一个在git汉字转拼音的开源库,支持简体和繁体中文.效率POAPinyin等其他库要高,转换库也完整下面简单介绍 实现原理 使用unicode_to_hanyu_pinyin.txt存储汉字编码相对应的拼音,以字典加载到内存中 NSString *resourceName =[[NSBundle mainBundle] pathForResource:@"unicode_to_hanyu_pinyin" ofType:@"txt"]; NSS